<html lang="de"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<script data-ezscrex='false' data-cfasync='false' data-pagespeed-no-defer>var __ez=__ez||{};__ez.stms=Date.now();__ez.evt={};__ez.script={};__ez.ck=__ez.ck||{};__ez.template={};__ez.template.isOrig=false;__ez.queue=function(){var e=0,i=0,t=[],n=!1,o=[],r=[],s=!0,a=function(e,i,n,o,r,s,a){var l=arguments.length>7&&void 0!==arguments[7]?arguments[7]:window,d=this;this.name=e,this.funcName=i,this.parameters=null===n?null:p(n)?n:[n],this.isBlock=o,this.blockedBy=r,this.deleteWhenComplete=s,this.isError=!1,this.isComplete=!1,this.isInitialized=!1,this.proceedIfError=a,this.fWindow=l,this.isTimeDelay=!1,this.process=function(){f("... func = "+e),d.isInitialized=!0,d.isComplete=!0,f("... func.apply: "+e);var i=d.funcName.split("."),n=null,o=this.fWindow||window;i.length>3||(n=3===i.length?o[i[0]][i[1]][i[2]]:2===i.length?o[i[0]][i[1]]:o[d.funcName]),null!=n&&n.apply(null,this.parameters),!0===d.deleteWhenComplete&&delete t[e],!0===d.isBlock&&(f("----- F'D: "+d.name),u())}},l=function(e,i,t,n,o,r,s){var a=arguments.length>7&&void 0!==arguments[7]?arguments[7]:window,l=this;this.name=e,this.path=i,this.async=o,this.defer=r,this.isBlock=t,this.blockedBy=n,this.isInitialized=!1,this.isError=!1,this.isComplete=!1,this.proceedIfError=s,this.fWindow=a,this.isTimeDelay=!1,this.isPath=function(e){return"/"===e[0]&&"/"!==e[1]},this.getSrc=function(e){return void 0!==window.__ezScriptHost&&this.isPath(e)&&"banger.js"!==this.name?window.__ezScriptHost+e:e},this.process=function(){l.isInitialized=!0,f("... file = "+e);var i=this.fWindow?this.fWindow.document:document,t=i.createElement("script");t.src=this.getSrc(this.path),!0===o?t.async=!0:!0===r&&(t.defer=!0),t.onerror=function(){var e={url:window.location.href,name:l.name,path:l.path,user_agent:window.navigator.userAgent};"undefined"!=typeof _ezaq&&(e.pageview_id=_ezaq.page_view_id);var i=encodeURIComponent(JSON.stringify(e)),t=new XMLHttpRequest;t.open("GET","//g.ezoic.net/ezqlog?d="+i,!0),t.send(),f("----- ERR'D: "+l.name),l.isError=!0,!0===l.isBlock&&u()},t.onreadystatechange=t.onload=function(){var e=t.readyState;f("----- F'D: "+l.name),e&&!/loaded|complete/.test(e)||(l.isComplete=!0,!0===l.isBlock&&u())},i.getElementsByTagName("head")[0].appendChild(t)}},d=function(e,i){this.name=e,this.path="",this.async=!1,this.defer=!1,this.isBlock=!1,this.blockedBy=[],this.isInitialized=!0,this.isError=!1,this.isComplete=i,this.proceedIfError=!1,this.isTimeDelay=!1,this.process=function(){}};function c(e){!0!==h(e)&&0!=s&&e.process()}function h(e){if(!0===e.isTimeDelay&&!1===n)return f(e.name+" blocked = TIME DELAY!"),!0;if(p(e.blockedBy))for(var i=0;i<e.blockedBy.length;i++){var o=e.blockedBy[i];if(!1===t.hasOwnProperty(o))return f(e.name+" blocked = "+o),!0;if(!0===e.proceedIfError&&!0===t[o].isError)return!1;if(!1===t[o].isComplete)return f(e.name+" blocked = "+o),!0}return!1}function f(e){var i=window.location.href,t=new RegExp("[?&]ezq=([^&#]*)","i").exec(i);"1"===(t?t[1]:null)&&console.debug(e)}function u(){++e>200||(f("let's go"),m(o),m(r))}function m(e){for(var i in e)if(!1!==e.hasOwnProperty(i)){var t=e[i];!0===t.isComplete||h(t)||!0===t.isInitialized||!0===t.isError?!0===t.isError?f(t.name+": error"):!0===t.isComplete?f(t.name+": complete already"):!0===t.isInitialized&&f(t.name+": initialized already"):t.process()}}function p(e){return"[object Array]"==Object.prototype.toString.call(e)}return window.addEventListener("load",(function(){setTimeout((function(){n=!0,f("TDELAY -----"),u()}),5e3)}),!1),{addFile:function(e,i,n,s,a,d,h,f,u){var m=new l(e,i,n,s,a,d,h,u);!0===f?o[e]=m:r[e]=m,t[e]=m,c(m)},addDelayFile:function(e,i){var n=new l(e,i,!1,[],!1,!1,!0);n.isTimeDelay=!0,f(e+" ...  FILE! TDELAY"),r[e]=n,t[e]=n,c(n)},addFunc:function(e,n,s,l,d,h,f,u,m,p){!0===h&&(e=e+"_"+i++);var w=new a(e,n,s,l,d,f,u,p);!0===m?o[e]=w:r[e]=w,t[e]=w,c(w)},addDelayFunc:function(e,i,n){var o=new a(e,i,n,!1,[],!0,!0);o.isTimeDelay=!0,f(e+" ...  FUNCTION! TDELAY"),r[e]=o,t[e]=o,c(o)},items:t,processAll:u,setallowLoad:function(e){s=e},markLoaded:function(e){if(e&&0!==e.length){if(e in t){var i=t[e];!0===i.isComplete?f(i.name+" "+e+": error loaded duplicate"):(i.isComplete=!0,i.isInitialized=!0)}else t[e]=new d(e,!0);f("markLoaded dummyfile: "+t[e].name)}},logWhatsBlocked:function(){for(var e in t)!1!==t.hasOwnProperty(e)&&h(t[e])}}}();__ez.evt.add=function(e,t,n){e.addEventListener?e.addEventListener(t,n,!1):e.attachEvent?e.attachEvent("on"+t,n):e["on"+t]=n()},__ez.evt.remove=function(e,t,n){e.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent?e.detachEvent("on"+t,n):delete e["on"+t]};__ez.script.add=function(e){var t=document.createElement("script");t.src=e,t.async=!0,t.type="text/javascript",document.getElementsByTagName("head")[0].appendChild(t)};__ez.dot={};__ez.queue.addFile('/detroitchicago/boise.js', '/detroitchicago/boise.js?gcb=195-2&cb=2', true, [], true, false, true, false);__ez.queue.addFile('/parsonsmaize/abilene.js', '/parsonsmaize/abilene.js?gcb=195-2&cb=28', true, [], true, false, true, false);</script>
<script data-ezscrex="false" type="text/javascript" data-cfasync="false">window._ezaq = Object.assign({}, typeof window._ezaq !== "undefined" ? window._ezaq : {}, {"ad_cache_level":1,"domain_id":173770,"ezcache_level":2,"ezcache_skip_code":0,"has_bad_image":0,"has_bad_words":0,"is_sitespeed":0,"lt_cache_level":0,"page_view_id":"dd484d37-a703-4679-562a-3b9d6ab1dfbd","response_size_orig":160296,"response_time_orig":5,"template_id":134,"url":"https://plantuml.com/de/class-diagram","word_count":4771,"worst_bad_word_level":0});__ez.queue.markLoaded('ezaqBaseReady');</script>
<script type="text/javascript">(function(){function storageAvailable(type){var storage;try{storage=window[type];var x='__storage_test__';storage.setItem(x,x);storage.removeItem(x);return true;}
catch(e){return e instanceof DOMException&&(e.code===22||e.code===1014||e.name==='QuotaExceededError'||e.name==='NS_ERROR_DOM_QUOTA_REACHED')&&(storage&&storage.length!==0);}}
function remove_ama_config(){if(storageAvailable('localStorage')){localStorage.removeItem("google_ama_config");}}
remove_ama_config()})()</script>
<script type="text/javascript">var ezoicTestActive = true</script>
<script data-ezscrex="false" type="text/javascript" data-cfasync="false">window._ezaq = Object.assign({}, typeof window._ezaq !== "undefined" ? window._ezaq : {}, {"ab_test_id":"mod174-c","ad_cache_level":1,"ad_count_adjustment":0,"ad_lazyload_version":0,"ad_load_version":1,"ad_location_ids":"","adx_ad_count":0,"ai_placeholder_cache_level":1,"ai_placeholder_placement_cnt":-1,"bidder_method":1,"bidder_version":3,"city":"Krasnoyarsk","country":"RU","days_since_last_visit":-1,"display_ad_count":0,"domain_id":173770,"domain_test_group":20230802,"ds_adsize_opt_id":-1,"engaged_time_visit":0,"ezcache_level":2,"ezcache_skip_code":0,"form_factor_id":1,"framework_id":1,"has_bad_image":0,"has_bad_words":0,"iab_category":"","iab_category_0":"596","is_embed":false,"is_from_recommended_pages":false,"is_return_visitor":false,"is_sitespeed":0,"last_page_load":"","last_pageview_id":"","lt_cache_level":0,"max_ads":0,"metro_code":0,"optimization_version":1,"page_ad_positions":"","page_view_count":64,"page_view_id":"dd484d37-a703-4679-562a-3b9d6ab1dfbd","position_selection_id":0,"postal_code":"660000","pv_event_count":0,"response_size_orig":160296,"response_time_orig":5,"serverid":"i-0c437027b59ab9782","state":"KYA","sub_page_ad_positions":"","t_epoch":1697690869,"template_id":134,"time_on_site_visit":0,"url":"https://plantuml.com/de/class-diagram","word_count":4771,"worst_bad_word_level":0});__ez.queue.markLoaded('ezaqReady');</script>
<script data-ezscrex='false' data-cfasync='false' data-pagespeed-no-defer>__ez.queue.addFile('/parsonsmaize/mulvane.js', '/parsonsmaize/mulvane.js?gcb=195-2&cb=5', true, ['/parsonsmaize/abilene.js'], true, false, true, false);__ez.queue.addFile('/parsonsmaize/olathe.js', '/parsonsmaize/olathe.js?gcb=195-2&cb=20', false, ['/parsonsmaize/abilene.js','/parsonsmaize/mulvane.js'], true, false, true, false);__ez.queue.addFile('/porpoiseant/et.js', '/porpoiseant/et.js?gcb=195-2&cb=2', false, [], true, false, true, false);!function(){var e;__ez.vep=(e=[],{Add:function(i,t){__ez.dot.isDefined(i)&&__ez.dot.isValid(t)&&e.push({type:"video",video_impression_id:i,domain_id:__ez.dot.getDID(),t_epoch:__ez.dot.getEpoch(0),data:__ez.dot.dataToStr(t)})},Fire:function(){if(void 0===document.visibilityState||"prerender"!==document.visibilityState){if(__ez.dot.isDefined(e)&&e.length>0)for(;e.length>0;){var i=5;i>e.length&&(i=e.length);var t=e.splice(0,i),o=__ez.dot.getURL("/detroitchicago/grapefruit.gif")+"?orig="+(!0===__ez.template.isOrig?1:0)+"&v="+btoa(JSON.stringify(t));__ez.dot.Fire(o)}e=[]}}})}();</script><script data-ezscrex='false' data-cfasync='false' data-pagespeed-no-defer>!function(){function e(i){return e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e(i)}__ez.pel=function(){var i=[];function t(t,o,d,_,n,r,a,s){if(__ez.dot.isDefined(t)&&0!=__ez.dot.isAnyDefined(t.getSlotElementId,t.ElementId)){void 0===s&&(s=!1);var p=parseInt(__ez.dot.getTargeting(t,"ap")),f=__ez.dot.getSlotIID(t),u=__ez.dot.getAdUnit(t,s),z=parseInt(__ez.dot.getTargeting(t,"compid")),g=0,c=0,l=function(i){if("undefined"==typeof _ezim_d)return!1;var t=__ez.dot.getAdUnitPath(i).split("/").pop();if("object"===("undefined"==typeof _ezim_d?"undefined":e(_ezim_d))&&_ezim_d.hasOwnProperty(t))return _ezim_d[t];for(var o in _ezim_d)if(o.split("/").pop()===t)return _ezim_d[o];return!1}(t);"object"==e(l)&&(void 0!==l.creative_id&&(c=l.creative_id),void 0!==l.line_item_id&&(g=l.line_item_id)),__ez.dot.isDefined(f,u)&&__ez.dot.isValid(o)&&("0"===f&&!0!==s||""===u||i.push({type:"impression",impression_id:f,domain_id:__ez.dot.getDID(),unit:u,t_epoch:__ez.dot.getEpoch(0),revenue:d,est_revenue:_,ad_position:p,ad_size:"",bid_floor_filled:n,bid_floor_prev:r,stat_source_id:a,country_code:__ez.dot.getCC(),pageview_id:__ez.dot.getPageviewId(),comp_id:z,line_item_id:g,creative_id:c,data:__ez.dot.dataToStr(o),is_orig:s||__ez.template.isOrig}))}}function o(){void 0!==document.visibilityState&&"prerender"===document.visibilityState||(__ez.dot.isDefined(i)&&i.length>0&&[i.filter((function(e){return e.is_orig})),i.filter((function(e){return!e.is_orig}))].forEach((function(e){for(;e.length>0;){var i=e[0].is_orig||!1,t=5;t>e.length&&(t=e.length);var o=e.splice(0,t),d=__ez.dot.getURL("/porpoiseant/army.gif")+"?orig="+(!0===i?1:0)+"&sts="+btoa(JSON.stringify(o));(void 0!==window.isAmp&&isAmp||void 0!==window.ezWp&&ezWp)&&void 0!==window._ezaq&&_ezaq.hasOwnProperty("domain_id")&&(d+="&visit_uuid="+_ezaq.visit_uuid),__ez.dot.Fire(d)}})),i=[])}return{Add:t,AddAndFire:function(e,i){t(e,i,0,0,0,0,0),o()},AddAndFireOrig:function(e,i){t(e,i,0,0,0,0,0,!0),o()},AddById:function(e,t,o,d){var _=e.split("/");if(__ez.dot.isDefined(e)&&3===_.length&&__ez.dot.isValid(t)){var n=_[0],r={type:"impression",impression_id:_[2],domain_id:__ez.dot.getDID(),unit:n,t_epoch:__ez.dot.getEpoch(0),pageview_id:__ez.dot.getPageviewId(),data:__ez.dot.dataToStr(t),is_orig:o||__ez.template.isOrig};void 0!==d&&(r.revenue=d),i.push(r)}},Fire:o,GetPixels:function(){return i}}}()}();__ez.queue.addFile('/detroitchicago/raleigh.js', '/detroitchicago/raleigh.js?gcb=195-2&cb=6', false, ['/parsonsmaize/abilene.js'], true, false, true, false);__ez.queue.addFile('/detroitchicago/vista.js', '/detroitchicago/vista.js?gcb=195-2&cb=5', false, ['/parsonsmaize/abilene.js'], true, false, true, false);__ez.queue.addFile('/detroitchicago/tampa.js', '/detroitchicago/tampa.js?gcb=195-2&cb=5', false, ['/parsonsmaize/abilene.js'], true, false, true, false);</script><base href=""/><meta name="flattr:id" content="1ew3x0"/><script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "Organization",
  "url": "https://plantuml.com",
  "name": "PlantUML",
  "sameAs" : ["https://twitter.com/plantuml","https://en.wikipedia.org/wiki/PlantUML","https://www.wikidata.org/wiki/Q18346546"],
  "logo": "https://cdn-0.plantuml.com/logo3.png",
  "contactPoint": [{
    "@type": "ContactPoint",
    "email": "plantuml@gmail.com",
    "url": "https://plantuml.com",
    "contactType": "customer service"
  }]
}
</script><script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [{
    "@type": "ListItem",
    "position": 1,
    "item": {
      "@id": "https://plantuml.com",
      "name": "Home"
    }
  },{
    "@type": "ListItem",
    "position": 2,
    "item": {
      "@id": "https://plantuml.com/sitemap-language-specification",
      "name": "Language specification"
    }
  },{
    "@type": "ListItem",
    "position": 3,
    "item": {
      "@id": "https://plantuml.com/class-diagram",
      "name": "Class Diagram"
  }
  }]
}
</script><link rel="canonical" href="class-diagram.html"/><link rel="alternate" hreflang="x-default" href="../class-diagram.html"/><link rel="alternate" hreflang="de" href="class-diagram.html"/><link rel="alternate" hreflang="en" href="../class-diagram.html"/><link rel="alternate" hreflang="es" href="../es/class-diagram.html"/><link rel="alternate" hreflang="fr" href="../fr/class-diagram.html"/><link rel="alternate" hreflang="ja" href="../ja/class-diagram.html"/><link rel="alternate" hreflang="ru" href="../ru/class-diagram.html"/><link rel="alternate" hreflang="ko" href="../ko/class-diagram.html"/><link rel="alternate" hreflang="zh" href="../zh/class-diagram.html"/><link rel="shortcut icon" href="../favicon.ico"/><link rel="preload" as="image" href="../svgrepo-house.svg"/><link rel="preload" as="image" href="../svgrepo-text-news.svg"/><link rel="preload" as="image" href="../svgrepo-rocket-3-start.svg"/><link rel="preload" as="image" href="../svgrepo-server.svg"/><link rel="preload" as="image" href="../svgrepo-play.svg"/><link rel="preload" as="image" href="../svgrepo-forum.svg"/><link rel="preload" as="image" href="../svgrepo-add-to-online-cart.svg"/><link rel="preload" as="image" href="../svgrepo-forum-message.svg"/><link rel="preload" as="image" href="../svgrepo-palette-fill.svg"/><link rel="preload" as="image" href="../svgrepo-cpu.svg"/><link rel="preload" as="image" href="../svgrepo-books-library.svg"/><link rel="preload" as="image" href="../svgrepo-signpost-fill.svg"/><link rel="preload" as="image" href="../svgrepo-library.svg"/><link rel="preload" as="image" href="../flags21.png"/><link rel="preload" as="image" href="../svgrepo-uxwing-light-mode-toggle.svg"/><title>Klassendiagramm Syntax und Funktionen</title><meta name="description" content="PlantUML Klassendiagramm Syntax: Sie können Schnittstellen definieren, Mitglieder, Beziehungen, die Pakete, Generika, Notizen ... Ändern von Schriften und Farben ist ebenfalls möglich."/><meta property="og:type" content="article"/><meta property="og:title" content="Klassendiagramm Syntax und Funktionen"/><meta property="og:description" content="PlantUML Klassendiagramm Syntax: Sie können Schnittstellen definieren, Mitglieder, Beziehungen, die Pakete, Generika, Notizen ... Ändern von Schriften und Farben ist ebenfalls möglich."/><meta property="og:url" content="https://plantuml.com/de/class-diagram"/><meta property="og:site_name" content="PlantUML.com"/><meta name="twitter:image" content="https://plantuml.com/og-class-diagram"/><meta property="og:locale" content="de"/><meta name="twitter:card" content="summary"/><meta name="twitter:title" content="Klassendiagramm Syntax und Funktionen"/><meta name="twitter:description" content="PlantUML Klassendiagramm Syntax: Sie können Schnittstellen definieren, Mitglieder, Beziehungen, die Pakete, Generika, Notizen ... Ändern von Schriften und Farben ist ebenfalls möglich."/><meta name="twitter:site" content="@PlantUML"/><meta name="twitter:creator" content="@PlantUML"/><style>li{margin:2px}#external li{margin:13px}.pezoic{max-width:970px}@media screen and (max-width:1600px){.pezoic{max-width:768px}}.coptable{max-width:90%}.mytab{display:inline-block;border-radius:3px;border:1px solid #e1e4e8}.mytab:hover{border:1px dashed #0366d6;cursor:pointer;color:#0366d6;background:#f6f8fa}.cop{margin:25px 10px 0 10px}.cop:hover{cursor:pointer;filter:invert(30%) sepia(75%) saturate(4001%) hue-rotate(201deg) brightness(88%) contrast(98%)}.cop2{margin:25px 10px 0 10px}.cop2:hover{cursor:pointer}.msg{position:absolute;color:#396;background-color:#FFF;margin-top:55px;display:none;border-radius:3px;border:1px solid #4dff00}.mycell0{float:left;vertical-align:top;padding:10px}.mycell0 code:hover{cursor:default;color:#000}.mycell{float:right;vertical-align:top;padding:10px;max-width:55vw;overflow-x:auto}.mycell0 pre{max-width:55vw;overflow-x:auto}.cod{background:#edeff3;padding:2px 5px;border-radius:3px}.colo{display:inline-block;background:#edeff3;padding:7px 12px;border-radius:3px}.tag,.tagg,.tago,.tagr{text-rendering:optimizeLegibility;display:inline-block;padding:3px 5px 2px 4px;text-decoration:none;white-space:nowrap;border:1px solid #999;text-transform:uppercase;text-align:center;border-radius:3px;font-size:11px;font-weight:bold;line-height:90%}.tag{background-color:#eee}.tagg{background-color:#98fb98}.tago{background-color:#fafa00}.tagr{background-color:#ff4500}a{text-decoration:none;color:#0366d6}a:hover{text-decoration:underline}.menu1{border:0;font-family:Helvetica,sans-serif;font-size:14px;padding:0;margin:0;white-space:nowrap;overflow:hidden;vertical-align:middle;line-height:30px}.menu1 a{text-align:center;padding:10px 7px 10px 7px;text-decoration:none;color:#637282}.menu1 a:hover{color:#0366d6}#menu0{top:0;z-index:4;margin:0 0 0 10px;padding:0}@media screen and (max-width:1200px){#menu0{visibility:hidden}}.mhov img{margin:0 5px 0 0;padding:0}.mhov:hover{filter:invert(25%) sepia(97%) saturate(2026%) hue-rotate(201deg) brightness(91%) contrast(98%)}#menuside2{border:0;font-family:Helvetica,sans-serif;font-size:14px;padding:20px 0 4px 0;margin:0}#menuside2 span{vertical-align:top}#menuside2 li{list-style:none;position:relative;padding:0;margin:10px 20px 10px 10px;border:0}#menuside2 li a{display:inline-block;text-decoration:none;color:#637282;width:100%}#BC{z-index:0;padding-top:5px;top:35px}.breadcrumb{z-index:1;font-family:Helvetica,sans-serif;font-size:14px;text-align:center;display:inline-block;overflow:hidden;border-radius:5px}.breadcrumb a{text-decoration:none;outline:0;display:block;float:left;font-size:12px;line-height:24px;color:#373f49;padding:0 10px 0 35px;background:#f0f1f1;background:linear-gradient(#f0f1f1,#c6d2d2);position:relative}.breadcrumb a:first-child{padding-left:21px;border-radius:5px 0 0 5px}.breadcrumb a:first-child:before{left:14px}.breadcrumb a:last-child{visibility:hidden}.breadcrumb a.active,.breadcrumb a:hover{color:#0366d6;background:#c6d2d2;background:linear-gradient(#e3e4e4,#b8c7c7)}.breadcrumb a.active:after,.breadcrumb a:hover:after{background:#c6d2d2;background:linear-gradient(135deg,#e3e4e4,#b8c7c7)}.breadcrumb a:after{content:'';position:absolute;top:0;right:-12px;width:24px;height:24px;transform:scale(0.707) rotate(45deg);z-index:1;background:#f0f1f1;background:linear-gradient(135deg,#f0f1f1,#c6d2d2);box-shadow:2px -2px 0 2px rgba(0,0,0,0.1),3px -3px 0 2px rgba(255,255,255,0.1);border-radius:0 5px 0 50px}.breadcrumb a:last-child:after{content:none;visibility:hidden}.lga,.lga a,.lgi,.lgi a{font-family:Helvetica,sans-serif;font-size:13px;text-align:center;color:#fff;padding:0 5px;margin:0}.lga,.lga a{background-color:#008}.lgi,.lgi a{background-color:#888}.lga:hover,.lga:hover a{text-decoration:none;color:#BBB}.lgi:hover,.lgi:hover a{text-decoration:none;color:#CCC}</style><style>.backtop{margin:0 10px}.backtop:hover{cursor:pointer;filter:invert(30%) sepia(75%) saturate(4001%) hue-rotate(201deg) brightness(88%) contrast(98%)}</style><style>.dropbtn{padding:0;border:0;background:0}.dropdown{position:relative;display:inline-block;margin:0 10px}.dropdown-content{display:none;position:absolute;background-color:#f1f1f1;min-width:160px;box-shadow:0 8px 16px 0 rgba(0,0,0,0.2);z-index:1}.dropdown-content img{vertical-align:middle;margin:0 8px 0 1px}.dropdown-content a{font-size:small;font-weight:normal;color:black;padding:5px 10px;text-decoration:none;display:block}.dropdown-content a:hover{background-color:#ddd;color:#0366d6}.dropdown:hover .dropdown-content{display:block}.dropdown:hover .dropbtn{background-color:#3e8e41}</style><style>#flex1{margin:0;padding:0;display:flex;flex-direction:row;width:378px;height:100%}#lll{flex-grow:1;flex-shrink:1;max-width:162px;overflow:hidden}#mmm{flex-grow:0;flex-shrink:0;background:#edeff3;width:210px;min-width:210px;max-width:210px;flex-grow:0;flex-shrink:0;border-left:1px solid #d4d8de}#qqq{flex-grow:0;flex-shrink:0;width:4px;min-width:4px;max-width:4px;flex-grow:0;flex-shrink:0}#rrr{flex-grow:1;flex-shrink:1;max-width:162px;overflow:hidden}.cde{display:flex;flex-direction:column;justify-content:space-between;height:100%}.cd{display:flex;flex-direction:column;justify-content:space-start;height:100%}.aaa{height:30px;min-height:30px;max-height:30px;flex-grow:0;flex-shrink:0;background:#edeff3;border-bottom:1px solid #d4d8de}.bbb,.bbborder{flex-grow:1;flex-shrink:0}.bbborder{border-left:1px solid #d4d8de}#header{z-index:10;position:fixed;left:378px;right:0;height:30px;top:0;background:#edeff3;border-bottom:1px solid #d4d8de}#header2{z-index:7;position:fixed;left:378px;right:0;height:10px;top:30px;background:#fefefe}#left0{top:0;position:fixed;left:0;margin:0;bottom:0;width:378px;padding:0;z-index:2}#root{padding:0;margin:40px 0 0 388px;background:#fefefe}body{margin:auto;overflow-x:hidden;background:#fefefe}@media screen and (max-width:1190px){#flex1,#left0{width:215px}#root{margin:40px 0 0 224px}#header,#header2{left:215px}#left0{left:0}#lll,#rrr{width:0;visibility:hidden;flex-grow:0;flex-shrink:0}}@media screen and (max-width:1010px){#root{margin:0 0 0 216px}#header,#header2{display:none}#lll,#qqq{width:0;visibility:hidden;flex-grow:0;flex-shrink:0}#mmm{border-right:1px solid #d4d8de}}@media screen and (min-width:1700px){#header,#header2{left:518px}#left0,#flex1{width:518px}#root{margin-left:528px}#lll,#rrr{max-width:302px}}</style><script>window.pushMST_config={vapidPK:"BBodn2vLFoDO5AdCfmOOzNmcUsn52kTA6JNZNYVFymzEdWHonz_bkUcsaTkPXHvNGRkRUSAxMbup-H0l2sb1h_Q",enableOverlay:true,swPath:"/sw.js",i18n:{}};var pushmasterTag=document.createElement("script");pushmasterTag.src="https://cdn.pushmaster-cdn.xyz/scripts/publishers/629f5e297baecc00098a271b/SDK.js";pushmasterTag.setAttribute("defer","");var firstScriptTag=document.getElementsByTagName("script")[0];firstScriptTag.parentNode.insertBefore(pushmasterTag,firstScriptTag);</script><script async="" src="https://www.googletagmanager.com/gtag/js?id=G-TKZNNQT9CZ"></script><script>window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments)}gtag("js",new Date());gtag("config","G-TKZNNQT9CZ");</script><script>var llg="de";var az=0;var amdark=0;function ljs(b){if(az){return false}var a=document.createElement("script");a.type="text/javascript";a.src="/btn-"+b+".js";document.body.innerHTML="<i style='position:absolute;top:30%;width:100%;'><center>Loading in progress...";document.body.appendChild(a)}function ctc(c){document.getElementById("img"+c).classList.remove("cop");document.getElementById("img"+c).classList.add("cop2");document.getElementById("pre"+c).style.backgroundColor="#4dff00";document.getElementById("msg"+c).style.display="inline";setTimeout(function(){document.getElementById("img"+c).classList.remove("cop2");document.getElementById("img"+c).classList.add("cop");document.getElementById("pre"+c).style.backgroundColor="";document.getElementById("msg"+c).style.display="none"},800);text=document.getElementById("pre"+c).innerText;if(window.clipboardData&&window.clipboardData.setData){return window.clipboardData.setData("Text",text)}else{if(document.queryCommandSupported&&document.queryCommandSupported("copy")){var a=document.createElement("textarea");a.textContent=text;a.style.position="fixed";document.body.appendChild(a);a.select();try{return document.execCommand("copy")}catch(b){return false}finally{document.body.removeChild(a)}}}};</script><script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script><script type='text/javascript'>
var ezoTemplate = 'pub_site';
var ezouid = '1';
var ezoFormfactor = '1';
</script><script data-ezscrex="false" type='text/javascript'>
var soc_app_id = '0';
var did = 173770;
var ezdomain = 'plantuml.com';
var ezoicSearchable = 1;
</script>
<script src="../detroitchicago/ezd.js%3Fgcb=195-2&amp;cb=4" defer async></script>
<script data-ezscrex='false' data-pagespeed-no-defer data-cfasync='false'>
function create_ezolpl() {
	var d = new Date();
	d.setTime(d.getTime() + (365*24*60*60*1000));
	var expires = "expires="+d.toUTCString();
	__ez.ck.setByCat("ezux_lpl_173770=" + new Date().getTime() + "|" + _ezaq.page_view_id + "|" + _ezaq.is_return_visitor + "; " + expires, 3);
}
function attach_ezolpl() {
	if (document.readyState === "complete") {
		create_ezolpl();
		return;
	}
	window.addEventListener("load", create_ezolpl);
}

__ez.queue.addFunc("attach_ezolpl", "attach_ezolpl", null, false, ['/detroitchicago/boise.js'], true, false, false, false);
</script></head><body><div id="left0"><div id="flex1"><div id="lll"><div class="cde"><div></div><div><span id="ezoic-pub-ad-placeholder-131"></span><!-- ezoic_pub_ad_placeholder-131-sidebar-120x600-131-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-131-sidebar-160x600-131-nonexxxnonexxxxxxezmaxscaleval100 --></div><div></div></div></div><div id="mmm"><div class="cde"><div><div><span id="ezoic-pub-ad-placeholder-105"></span><!-- ezoic_pub_ad_placeholder-105-sidebar_middle-120x240-105-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-105-sidebar_middle-125x125-105-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-105-sidebar_middle-180x150-105-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-105-sidebar_middle-200x200-105-nonexxxnonexxxxxxezmaxscaleval100 --></div><ul id="menuside2"><li><a href="index.html" class="mhov"><img src="../svgrepo-house.svg" width="16" height="16"/><span>Home</span></a></li><li><a href="news.html" class="mhov"><img src="../svgrepo-text-news.svg" width="16" height="16"/><span>Was gibt es Neues?</span></a></li><li><a href="starting.html" class="mhov"><img src="../svgrepo-rocket-3-start.svg" width="16" height="16"/><span>Erste Schritte</span></a></li><li><a href="https://www.plantuml.com/plantuml/uml/SyfFKj2rKt3CoKnELR1Io4ZDoSa70000" class="mhov"><img src="../svgrepo-server.svg" width="16" height="16"/><span>Online Server</span></a></li><li><a href="running.html" class="mhov"><img src="../svgrepo-play.svg" width="16" height="16"/><span>Running</span></a></li><li><a href="faq.html" class="mhov"><img src="../svgrepo-forum.svg" width="16" height="16"/><span>F.A.Q.</span></a></li><li><a href="download.html" class="mhov"><img src="../svgrepo-add-to-online-cart.svg" width="16" height="16"/><span>Download</span></a></li><li><a href="../qa.html" class="mhov"><img src="../svgrepo-forum-message.svg" width="16" height="16"/><span>Forum</span></a></li><li><a href="theme.html" class="mhov"><img src="../svgrepo-palette-fill.svg" width="16" height="16"/><span>Theme</span></a></li><li><a href="preprocessing.html" class="mhov"><img src="../svgrepo-cpu.svg" width="16" height="16"/><span>Vorverarbeitung</span></a></li><li><a href="stdlib.html" class="mhov"><img src="../svgrepo-books-library.svg" width="16" height="16"/><span>Standard Bibliothek</span></a></li><li><a href="https://crashedmind.github.io/PlantUMLHitchhikersGuide" class="mhov"><img src="../svgrepo-signpost-fill.svg" width="16" height="16"/><span>Hitchhiker&#39;s Guide</span></a></li><li><a href="guide.html" class="mhov"><img src="../svgrepo-library.svg" width="16" height="16"/><span>PDF Leitfaden</span></a></li></ul><div><span id="ezoic-pub-ad-placeholder-108"></span><!-- ezoic_pub_ad_placeholder-108-sidebar_middle-120x240-108-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-108-sidebar_middle-125x125-108-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-108-sidebar_middle-180x150-108-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-108-sidebar_middle-200x200-108-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><div></div><div style="margin-bottom:35px;"><span id="ezoic-pub-ad-placeholder-186"></span><!-- ezoic_pub_ad_placeholder-186-sidebar_middle-120x240-186-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-186-sidebar_middle-125x125-186-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-186-sidebar_middle-180x150-186-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-186-sidebar_middle-200x200-186-nonexxxnonexxxxxxezmaxscaleval100 --></div></div></div><div id="qqq"><div class="cd"><div class="aaa"></div><div class="bbborder"></div></div></div><div id="rrr"><div class="cd"><div class="aaa"></div><div style="height:5px;"></div><div class="bbb"><div class="cde"><div></div><div><span id="ezoic-pub-ad-placeholder-175"></span><!-- ezoic_pub_ad_placeholder-175-sidebar-120x600-175-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-175-sidebar-160x600-175-nonexxxnonexxxxxxezmaxscaleval100 --></div><div></div></div></div></div></div></div></div><style>#contmenu{display:flex;height:30px;width:100%;margin:0;padding:0}#contmenua{height:30px;padding-right:25px}#contmenub{z-index:15;display:inline-block;flex-grow:1;flex-shrink:1;height:30px;background-color:#edeff3}#magic{white-space:nowrap;overflow:hidden;z-index:14;position:fixed;top:0;right:50px;height:30px;width:30px}#magic2{white-space:nowrap;overflow:hidden;z-index:16;position:fixed;top:0;right:0;height:30px;width:50px;background-color:#edeff3}#magic2 img{margin:5px 0 0 5px;filter:invert(44%) sepia(27%) saturate(310%) hue-rotate(170deg) brightness(92%) contrast(83%)}#magic2:hover img{filter:invert(25%) sepia(97%) saturate(2026%) hue-rotate(201deg) brightness(91%) contrast(98%)}#magic:hover #svgrepoleft{filter:invert(22%) sepia(53%) saturate(4563%) hue-rotate(202deg) brightness(95%) contrast(98%)}#magic:hover{width:100%;height:31px}#aze{height:30px;display:flex;flex-direction:row-reverse}#aze1{height:30px;background-color:#edeff3}#aze2{height:30px;background-color:#edeff3;padding-left:10px;border-left:1px solid #d4d8de;border-bottom:1px solid #d4d8de}#aze1 img{filter:invert(46%) sepia(6%) saturate(1254%) hue-rotate(171deg) brightness(94%) contrast(92%)}#aze3{width:3px;height:30px;background-color:#edeff3}</style><div id="header"><div id="contmenu"><div id="contmenua"><div class="menu1"><a href="sequence-diagram.html">Sequenz</a><a href="use-case-diagram.html">Anwendungsfall</a><a href="class-diagram.html">Klasse</a><a href="activity-diagram-beta.html">Aktivität</a><a href="component-diagram.html">Komponente</a><a href="state-diagram.html">Zustand</a><a href="object-diagram.html">Objekt</a><a href="deployment-diagram.html">Einsatz</a><a href="timing-diagram.html">Zeitverlauf</a><a href="nwdiag.html">Network</a><a href="salt.html">Wireframe</a><a href="archimate-diagram.html">Archimate</a><a href="gantt-diagram.html">Gantt</a><a href="mindmap-diagram.html">MindMap</a><a href="wbs-diagram.html">WBS</a><a href="json.html">JSON</a><a href="yaml.html">YAML</a></div></div><div id="contmenub"></div></div><div id="magic"><div id="aze"><div id="aze1"><img id="svgrepoleft" width="30" height="30" src="../svgrepo-left.svg"/></div><div id="aze2"><div class="menu1"><a href="sequence-diagram.html">Sequenz</a><a href="use-case-diagram.html">Anwendungsfall</a><a href="class-diagram.html">Klasse</a><a href="activity-diagram-beta.html">Aktivität</a><a href="component-diagram.html">Komponente</a><a href="state-diagram.html">Zustand</a><a href="object-diagram.html">Objekt</a><a href="deployment-diagram.html">Einsatz</a><a href="timing-diagram.html">Zeitverlauf</a><a href="nwdiag.html">Network</a><a href="salt.html">Wireframe</a><a href="archimate-diagram.html">Archimate</a><a href="gantt-diagram.html">Gantt</a><a href="mindmap-diagram.html">MindMap</a><a href="wbs-diagram.html">WBS</a><a href="json.html">JSON</a><a href="yaml.html">YAML</a></div></div><div id="aze3"></div></div></div><div id="magic2"><a href="../de-dark/class-diagram.html"><img src="../svgrepo-uxwing-light-mode-toggle.svg" height="20"/></a></div></div><div id="header2"></div><div id="root"><style>#haut1{margin:50px 0 20px;padding:0;min-height:80px}#donate{padding-top:5px;min-height:30px}</style><div id="haut1"><div style="float:left;"><div class="breadcrumb"><a href="sitemap.html">PlantUML</a><a href="sitemap-language-specification.html">Language specification</a><a href="class-diagram.html">Class Diagram</a><a href="class-diagram.html#"></a></div><div id="donate">   <a href="https://discord.gg/sXhzexAQGh" style="text-decoration: none;"><img src="https://img.shields.io/discord/1083727021328306236?color=5865F2&amp;logo=discord&amp;logoColor=white" alt="Discord server"/></a>   <a href="https://github.com/sponsors/plantuml/" style="text-decoration: none;"><img src="https://img.shields.io/github/sponsors/plantuml?logo=github"/></a>   <a href="https://www.patreon.com/bePatron?patAmt=1&amp;u=527450&amp;rid=152970" style="text-decoration: none;"><img src="https://img.shields.io/badge/patreon-122-chocolate?logo=patreon"/></a>   <a href="../lp.html" style="text-decoration: none;"><img src="https://img.shields.io/liberapay/patrons/plantuml?color=gold&amp;logo=liberapay&amp;label=liberapay"/></a>   <a href="../en/paypal.html" style="text-decoration: none;"><img src="https://img.shields.io/badge/paypal-296-skyblue?logo=paypal&amp;logoColor=red"/></a></div></div><div style="float:right; margin:3px 0;"><style>#langlist{display:flex;justify-content:space-between;width:317px;height:16px;margin:3px 10px 3px 0}.sel2{border:2px solid #fefefe}.nosel2{border:2px solid #fefefe;filter:grayscale(100%) opacity(75%)}.sel2:hover,.nosel2:hover{cursor:pointer;border:2px solid #0366d6;border-spacing:0;filter:grayscale(0);filter:contrast(200%);filter:brightness(150%)}#flag1,#flag2,#flag3,#flag4,#flag5,#flag6,#flag7,#flag8{background:url(../flags21.png);background-repeat:no-repeat;background-clip:content-box;width:22px;height:16px}#flag2{background-position:-22px 0}#flag3{background-position:-44px 0}#flag4{background-position:-66px 0}#flag5{background-position:-88px 0}#flag6{background-position:-110px 0}#flag7{background-position:-132px 0}#flag8{background-position:-154px 0}</style><div id="langlist"><div id="flag1" onclick="location.href=&#39;/en/class-diagram&#39;" class="nosel2"></div><div id="flag2" onclick="location.href=&#39;/de/class-diagram&#39;" class="sel2"></div><div id="flag3" onclick="location.href=&#39;/es/class-diagram&#39;" class="nosel2"></div><div id="flag4" onclick="location.href=&#39;/fr/class-diagram&#39;" class="nosel2"></div><div id="flag5" onclick="location.href=&#39;/ja/class-diagram&#39;" class="nosel2"></div><div id="flag6" onclick="location.href=&#39;/ko/class-diagram&#39;" class="nosel2"></div><div id="flag7" onclick="location.href=&#39;/ru/class-diagram&#39;" class="nosel2"></div><div id="flag8" onclick="location.href=&#39;/zh/class-diagram&#39;" class="nosel2"></div></div></div></div><p><style>#topsticky{z-index:2;margin:0 240px 0 0}@media screen and (min-height:800px){#topsticky{position:sticky;top:40px}}@media screen and (max-width:1500px){#topsticky{margin:0}}</style></p><div id="topsticky"><span id="ezoic-pub-ad-placeholder-647"></span><!-- ezoic_pub_ad_placeholder-647-under_page_title-320x100-647-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-647-under_page_title-300x50v2-647-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-647-under_page_title-320x50-647-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-647-under_page_title-468x60-647-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-647-under_page_title-728x90-647-nonexxxnonexxxxxxezmaxscaleval100 --></div><p><a style="position:relative;top:-38px;" name="0bb074dd4a565b5d"></a><style>#toc{z-index:2;position:sticky;top:40px;list-style-type:none;margin:0;padding:0 10px}.chap{clear:both}#toc ul{list-style-type:none;max-height:87vh;overflow-y:auto;background:#f6f8fa;border-width:2px;border-style:groove;border-radius:3px;border-color:#e1e4e8;margin:0;padding:0}@media screen and (min-height:450px){#toc ul{max-height:89.5vh}}@media screen and (min-height:550px){#toc ul{max-height:91.5vh}}@media screen and (min-height:700px){#toc ul{max-height:93.5vh}}@media screen and (min-height:900px){#toc ul{max-height:94.5vh}}#toc li{margin:5px 5px 5px 10px;padding:0}@media screen and (max-width:1500px){#toctd{display:none}#toc{display:none}}</style><table border="0" cellspacing="0" cellpadding="0" width="100%"><tbody><tr valign="top" width="100%"><td valign="top"><h1 class="chap"><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#0"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#0"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#0"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Klassendiagramm</h1><p></p> Klassendiagramme werden mit einer Syntax entworfen, die derjenigen ähnelt, die traditionell in Programmiersprachen verwendet wird. Diese Ähnlichkeit fördert eine vertraute Umgebung für Entwickler und erleichtert so die Erstellung von Diagrammen. <p></p> Dieser Designansatz ist nicht nur prägnant, sondern ermöglicht auch die Erstellung von Darstellungen, die sowohl prägnant als auch aussagekräftig sind. Darüber hinaus ermöglicht er die Darstellung von Beziehungen zwischen Klassen durch eine Syntax, die an die von Sequenzdiagrammen angelehnt ist, und ebnet so den Weg für eine flüssige und aufschlussreiche Darstellung von Klasseninteraktionen. <p></p> Über strukturelle und relationale Darstellungen hinaus unterstützt die Klassendiagrammsyntax weitere Anreicherungen wie das Einfügen von Notizen und die Anwendung von Farben, wodurch Benutzer in die Lage versetzt werden, Diagramme zu erstellen, die sowohl informativ als auch visuell ansprechend sind. <p></p> Sie können mehr über einige der <a href="commons.html">gängigen Befehle in PlantUML</a> erfahren, um Ihre Diagrammerstellung zu verbessern. <a style="position:relative;top:-38px;" name="e5cec68ef9127fc4"></a><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#1"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#1"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#1"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Elemente deklarieren</h2><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgfbdd6fcaf292e040b0ca4f941d608a99" class="msg"> 🎉 Copied! </div><img width="16" height="16" id="imgfbdd6fcaf292e040b0ca4f941d608a99" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;fbdd6fcaf292e040b0ca4f941d608a99&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;fbdd6fcaf292e040b0ca4f941d608a99&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;fbdd6fcaf292e040b0ca4f941d608a99&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prefbdd6fcaf292e040b0ca4f941d608a99">@startuml
abstract        abstract
abstract class  &#34;abstract class&#34;
annotation      annotation
circle          circle
()              circle_short_form
class           class
diamond         diamond
&lt;&gt;              diamond_short_form
entity          entity
enum            enum
interface       interface
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="475" height="295" class="scale" src="../imgw/img-fbdd6fcaf292e040b0ca4f941d608a99.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p></p><em>[Ref. for <code class="cod">protocol</code> and <code class="cod">struct</code>: <a href="https://github.com/plantuml/plantuml/pull/1028">GH-1028</a>]</em><p></p><p></p><em>[Ref. for <code class="cod">protocol</code> and <code class="cod">struct</code>: <a href="https://github.com/plantuml/plantuml/pull/1028">GH-1028</a>, for <code class="cod">exception</code>: <a href="https://forum.plantuml.net/16258/adding-exception-keyword-for-class-diagram">QA-16258</a>]</em><p></p><center><div class="tago">WARNING</div> <b>This translation need to be updated.</b> <div class="tago">WARNING</div></center><a style="position:relative;top:-38px;" name="9dd2a6eca0c2a0e7"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-179"></span><!-- ezoic_pub_ad_placeholder-179-under_second_paragraph-234x60-179-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-179-under_second_paragraph-468x60-179-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-179-under_second_paragraph-728x90-179-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-179-under_second_paragraph-970x90-179-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#2"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#2"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#2"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Beziehungen zwischen Klassen</h2><p></p> Beziehungen zwischen Klassen werden mit den folgenden Symbolen gekennzeichnet: <p></p><table border="1" cellspacing="0" cellpadding="5"><tbody><tr><td><b> Type </b></td><td><b> Symbol </b></td><td><b> Drawing </b></td></tr><tr><td> Extension </td><td><code class="cod">&lt;|--</code></td><td><img loading="lazy" src="../img/extends01.png"/></td></tr><tr><td> Composition </td><td><code class="cod">*--</code></td><td><img loading="lazy" src="../img/sym03.png"/></td></tr><tr><td> Aggregation </td><td><code class="cod">o--</code></td><td><img loading="lazy" src="../img/sym01.png"/></td></tr></tbody></table><p></p> Es ist möglich <code class="cod">--</code> durch <code class="cod">..</code> zu ersetzen, um eine gestrichelte Linie zu erhalten. <p></p> Wenn man diese Regeln kennt, ist es möglich, die folgenden Zeichnungen zu zeichnen: <p></p><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg613a4e0a8abe4b01abfdb8dd57f22bee" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img613a4e0a8abe4b01abfdb8dd57f22bee" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;613a4e0a8abe4b01abfdb8dd57f22bee&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;613a4e0a8abe4b01abfdb8dd57f22bee&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;613a4e0a8abe4b01abfdb8dd57f22bee&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre613a4e0a8abe4b01abfdb8dd57f22bee">@startuml
Class01 &lt;|-- Class02
Class03 *-- Class04
Class05 o-- Class06
Class07 .. Class08
Class09 -- Class10
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="568" height="169" class="scale" src="../imgw/img-613a4e0a8abe4b01abfdb8dd57f22bee.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg3b72b9ea39442f6f2906be22f57481e7" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img3b72b9ea39442f6f2906be22f57481e7" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;3b72b9ea39442f6f2906be22f57481e7&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;3b72b9ea39442f6f2906be22f57481e7&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;3b72b9ea39442f6f2906be22f57481e7&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre3b72b9ea39442f6f2906be22f57481e7">@startuml
Class11 &lt;|.. Class12
Class13 --&gt; Class14
Class15 ..&gt; Class16
Class17 ..|&gt; Class18
Class19 &lt;--* Class20
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="568" height="169" class="scale" src="../imgw/img-3b72b9ea39442f6f2906be22f57481e7.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgf874eab4eb82d1e825b803e81f52a729" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgf874eab4eb82d1e825b803e81f52a729" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;f874eab4eb82d1e825b803e81f52a729&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;f874eab4eb82d1e825b803e81f52a729&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;f874eab4eb82d1e825b803e81f52a729&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pref874eab4eb82d1e825b803e81f52a729">@startuml
Class21 #-- Class22
Class23 x-- Class24
Class25 }-- Class26
Class27 +-- Class28
Class29 ^-- Class30
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="568" height="169" class="scale" src="../imgw/img-f874eab4eb82d1e825b803e81f52a729.png"/></div></div></td></tr></tbody></table></p><p><a style="position:relative;top:-38px;" name="4a705b44651caa59"></a></p><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#3"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#3"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#3"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Beschriften von Beziehungen</h2><p></p> Beziehungen können beschriftet werden, durch das Anhängen eines Doppelpunktes <code class="cod">:</code> gefolgt von dem Beschriftungstext. <p></p> Um Kardinalität anzuzeigen, verwendet man doppelte Anführungszeichen <code class="cod">&#34;&#34;</code> auf jeder Seite der Beziehung. <p></p><p></p><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msga13e14495af0e2d0a23b538f8a3e0a24" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imga13e14495af0e2d0a23b538f8a3e0a24" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;a13e14495af0e2d0a23b538f8a3e0a24&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;a13e14495af0e2d0a23b538f8a3e0a24&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;a13e14495af0e2d0a23b538f8a3e0a24&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prea13e14495af0e2d0a23b538f8a3e0a24">@startuml

Class01 &#34;1&#34; *-- &#34;many&#34; Class02 : contains

Class03 o-- Class04 : aggregation

Class05 --&gt; &#34;1&#34; Class06

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="332" height="187" class="scale" src="../imgw/img-a13e14495af0e2d0a23b538f8a3e0a24.png"/></div></div></td></tr></tbody></table></p><p></p><p></p> Um zu zeigen, in welche Richtung die Beziehung wirkt, können an die Beschriftung zusätzliche Pfeilspitzen angehängt werden, indem man vor die Beschriftung <code class="cod">&lt;</code> oder nach der Beschriftung <code class="cod">&gt;</code> verwendet. <p></p><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgc6901f44f3c987b07c036d6326ae2e4d" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgc6901f44f3c987b07c036d6326ae2e4d" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;c6901f44f3c987b07c036d6326ae2e4d&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;c6901f44f3c987b07c036d6326ae2e4d&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;c6901f44f3c987b07c036d6326ae2e4d&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prec6901f44f3c987b07c036d6326ae2e4d">@startuml
class Car

Driver - Car : drives &gt;
Car *- Wheel : have 4 &gt;
Car -- Person : &lt; owns

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="379" height="187" class="scale" src="../imgw/img-c6901f44f3c987b07c036d6326ae2e4d.png"/></div></div></td></tr></tbody></table></p><p><a style="position:relative;top:-38px;" name="bd62ba9333d08763"></a></p><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-114"></span><!-- ezoic_pub_ad_placeholder-114-mid_content-234x60-114-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-114-mid_content-468x60-114-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-114-mid_content-728x90-114-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-114-mid_content-970x90-114-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#4"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#4"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#4"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Verwendung von Sonderzeichen</h2><p></p><p></p> Wenn sie in dem Name Ihrer Klasse (oder des Enums, oder der Schnittstelle) <a href="unicode.html">Zeichen verwenden</a> wollen, dann gibt es die folgenden Möglichkeiten: <ul><li>Verwenden Sie das <code class="cod">as</code> Schlüsselwort in der Definition</li><li>Schließen Sie den Namen in Hochommas <code class="cod">&#34;&#34;</code> ein</li></ul><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg0695f1bedd3167bac067a02c689a7ac9" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img0695f1bedd3167bac067a02c689a7ac9" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;0695f1bedd3167bac067a02c689a7ac9&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;0695f1bedd3167bac067a02c689a7ac9&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;0695f1bedd3167bac067a02c689a7ac9&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre0695f1bedd3167bac067a02c689a7ac9">@startuml
class &#34;This is my class&#34; as class1
class class2 as &#34;It works this way too&#34;

class2 *-- &#34;foo/dummy&#34; : use
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="336" height="187" class="scale" src="../imgw/img-0695f1bedd3167bac067a02c689a7ac9.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p></p> Also note that names starting with <code class="cod">$</code> are valid, but to assign an alias to such element the name must be put between quotes <code class="cod">&#34;&#34;</code>. <center><div class="tago">WARNING</div> <b>This translation need to be updated.</b> <div class="tago">WARNING</div></center><a style="position:relative;top:-38px;" name="090967fbee930909"></a><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#5"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#5"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#5"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Methoden hinzufügen</h2><p></p><p></p> Um Feldern und Methoden zu einer Klasse hinzuzufügen, wird der Doppelpunkt <code class="cod">:</code> gefolgt von dem Namen des Feldes oder der Methode verwendet. <p></p> Das System erkennt anhand der Klammern, ob es sich um eine Methode oder um ein Feld handelt. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgdfece97f850602cb2759823561771bf7" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgdfece97f850602cb2759823561771bf7" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;dfece97f850602cb2759823561771bf7&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;dfece97f850602cb2759823561771bf7&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;dfece97f850602cb2759823561771bf7&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="predfece97f850602cb2759823561771bf7">@startuml
Object &lt;|-- ArrayList

Object : equals()
ArrayList : Object[] elementData
ArrayList : size()

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="158" height="222" class="scale" src="../imgw/img-dfece97f850602cb2759823561771bf7.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p></p> Es ist möglich in Klammern, Feldern und Methoden mit <code class="cod">{}</code> zu gruppieren <p></p> Die Syntax ist sehr flexibel bezüglich der Reihenfolge der Typen und Namen. <p></p><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msga054a2c9f6838418119098dd46e0c8b8" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imga054a2c9f6838418119098dd46e0c8b8" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;a054a2c9f6838418119098dd46e0c8b8&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;a054a2c9f6838418119098dd46e0c8b8&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;a054a2c9f6838418119098dd46e0c8b8&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prea054a2c9f6838418119098dd46e0c8b8">@startuml
class Dummy {
  String data
  void methods()
}

class Flight {
   flightNumber : Integer
   departureTime : Date
}
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="301" height="96" class="scale" src="../imgw/img-a054a2c9f6838418119098dd46e0c8b8.png"/></div></div></td></tr></tbody></table></p><p></p><p></p> Sie können die Modifier <code class="cod">{field}</code> und <code class="cod">{method}</code> verwenden, um das Standardverhalten des Parsers bei Feldern und Methoden zu übersteuern. <p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg8c48be361b23d39bb1fc1f464b1a7b2b" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img8c48be361b23d39bb1fc1f464b1a7b2b" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;8c48be361b23d39bb1fc1f464b1a7b2b&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;8c48be361b23d39bb1fc1f464b1a7b2b&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;8c48be361b23d39bb1fc1f464b1a7b2b&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre8c48be361b23d39bb1fc1f464b1a7b2b">@startuml
class Dummy {
  {field} A field (despite parentheses)
  {method} Some method
}

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="214" height="103" class="scale" src="../imgw/img-8c48be361b23d39bb1fc1f464b1a7b2b.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><a style="position:relative;top:-38px;" name="3644720244dd6c6a"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-115"></span><!-- ezoic_pub_ad_placeholder-115-long_content-234x60-115-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-115-long_content-468x60-115-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-115-long_content-728x90-115-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-115-long_content-970x90-115-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#6"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#6"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#6"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Sichtbarkeit festlegen</h2><p></p> Beim Definieren von Methoden und Feldern kann die Sichtbarkeit mit einem der folgenden Zeichen festgelegt werden: <p></p><table border="1" cellspacing="0" cellpadding="5"><tbody><tr><td><b> Character </b></td><td><b> Icon for field </b></td><td><b> Icon for method </b></td><td><b> Visibility </b></td></tr><tr><td><code class="cod">-</code></td><td><img loading="lazy" src="../img/private-field.png"/></td><td><img loading="lazy" src="../img/private-method.png"/></td><td> private </td></tr><tr><td><code class="cod">#</code></td><td><img loading="lazy" src="../img/protected-field.png"/></td><td><img loading="lazy" src="../img/protected-method.png"/></td><td> protected </td></tr><tr><td><code class="cod">~</code></td><td><img loading="lazy" src="../img/package-private-field.png"/></td><td><img loading="lazy" src="../img/package-private-method.png"/></td><td> package private </td></tr><tr><td><code class="cod">+</code></td><td><img loading="lazy" src="../img/public-field.png"/></td><td><img loading="lazy" src="../img/public-method.png"/></td><td> public </td></tr></tbody></table><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg29f5126cd9f01fb26abdfe89b4f571da" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img29f5126cd9f01fb26abdfe89b4f571da" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;29f5126cd9f01fb26abdfe89b4f571da&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;29f5126cd9f01fb26abdfe89b4f571da&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;29f5126cd9f01fb26abdfe89b4f571da&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre29f5126cd9f01fb26abdfe89b4f571da">@startuml

class Dummy {
 -field1
 #field2
 ~method1()
 +method2()
}

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="111" height="138" class="scale" src="../imgw/img-29f5126cd9f01fb26abdfe89b4f571da.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p></p> Mit dem <code class="cod">skinparam classAttributeIconSize 0</code> Befehl kann dieses Verhalten ausgeschaltet werden : <p></p><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgb9f95b5def926196a3f6372993c00936" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgb9f95b5def926196a3f6372993c00936" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;b9f95b5def926196a3f6372993c00936&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;b9f95b5def926196a3f6372993c00936&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;b9f95b5def926196a3f6372993c00936&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="preb9f95b5def926196a3f6372993c00936">@startuml
skinparam classAttributeIconSize 0
class Dummy {
 -field1
 #field2
 ~method1()
 +method2()
}

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="105" height="138" class="scale" src="../imgw/img-b9f95b5def926196a3f6372993c00936.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p></p><center><div class="tago">WARNING</div> <b>This translation need to be updated.</b> <div class="tago">WARNING</div></center><a style="position:relative;top:-38px;" name="9fd9d25be2fbb118"></a><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#7"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#7"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#7"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Abstract und Static</h2><p></p> Sie können statische oder abstrakte methoden und statische Attribute durch benutzen des <code class="cod">{static}</code> oder <code class="cod">{abstract}</code> Modifikators definieren. <p></p> Diese Modifikatoren können am Anfang oder am Ende der Zeile benutzt werden. Es kann auch <code class="cod">{classifier}</code> statt <code class="cod">{static}</code> benutzt werden. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgdea9355afdeee2ef46ca9c675ab483a8" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgdea9355afdeee2ef46ca9c675ab483a8" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;dea9355afdeee2ef46ca9c675ab483a8&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;dea9355afdeee2ef46ca9c675ab483a8&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;dea9355afdeee2ef46ca9c675ab483a8&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="predea9355afdeee2ef46ca9c675ab483a8">@startuml
class Dummy {
  {static} String id
  {abstract} void methods()
}
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="125" height="103" class="scale" src="../imgw/img-dea9355afdeee2ef46ca9c675ab483a8.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><a style="position:relative;top:-38px;" name="08ca680401eefe3a"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-116"></span><!-- ezoic_pub_ad_placeholder-116-longer_content-234x60-116-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-116-longer_content-468x60-116-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-116-longer_content-728x90-116-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-116-longer_content-970x90-116-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#8"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#8"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#8"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Der Klassenrumpf für Fortgeschrittene</h2><p></p> Standardmäßig werden die Methoden und Felder im Klassenrumpf automatisch von PlantUML gruppiert. Mit Hilfe von Trennzeichen können Felder und Methoden aber auch selber geordnet werden. Folgende Trennzeichen sind möglich: <code class="cod">--</code> (einfache durchzogene Linie), <code class="cod">..</code> (einfache unterbrochene Linie), <code class="cod">==</code> (doppelte durchzogene Linie, <code class="cod">__</code> (dicke durchzogene Linie). <p></p> Es können auch Titel innerhalb des Trennzeichen angegeben werden: <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg0c1108163137ddfc8de78390a8f0ae01" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img0c1108163137ddfc8de78390a8f0ae01" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;0c1108163137ddfc8de78390a8f0ae01&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;0c1108163137ddfc8de78390a8f0ae01&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;0c1108163137ddfc8de78390a8f0ae01&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre0c1108163137ddfc8de78390a8f0ae01">@startuml
class Foo1 {
  You can use
  several lines
  ..
  as you want
  and group
  ==
  things together.
  __
  You can have as many groups
  as you want
  --
  End of class
}

class User {
  .. Simple Getter ..
  + getName()
  + getAddress()
  .. Some setter ..
  + setName()
  __ private data __
  int age
  -- encrypted --
  String password
}

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="365" height="227" class="scale" src="../imgw/img-0c1108163137ddfc8de78390a8f0ae01.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><a style="position:relative;top:-38px;" name="59c91a18bcc97bb0"></a><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#9"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#9"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#9"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Notizen und Stereotypen</h2><p></p> Stereotypen werden mit dem Schlüsselwort <code class="cod">class</code> oder mit den Symbolen <code class="cod">&lt;&lt;</code> (doppelte spitze Klammer links) und <code class="cod">&gt;&gt;</code> (doppelte spitze Klammer rechts) definiert. Zwischen den Klammern wird der Name des Stereotyps angegeben. <p></p> Mit den <code class="cod">note left of</code> , <code class="cod">note right of</code>, <code class="cod">note top of</code> , <code class="cod">note bottom of</code> Schlüsselwörtern kann man Notizen und ihre Position festlegen. <p></p> Eine Notiz zur zuletzt definierten Klasse wird mit den Schlüsselwörtern <code class="cod">note left</code>, <code class="cod">note right</code>,<code class="cod">note top</code>, <code class="cod">note bottom</code> hinzugefügt. <p></p> Eine Notiz kann aber auch nur mit dem <code class="cod">note</code> Schlüsselwort erstellt werden und dann mit dem <code class="cod">..</code> Symbol den Klassen zugeordnet werden. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg1dab387b5b418cfea3060cbc0a15b500" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img1dab387b5b418cfea3060cbc0a15b500" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;1dab387b5b418cfea3060cbc0a15b500&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;1dab387b5b418cfea3060cbc0a15b500&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;1dab387b5b418cfea3060cbc0a15b500&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre1dab387b5b418cfea3060cbc0a15b500">@startuml
class Object &lt;&lt; general &gt;&gt;
Object &lt;|--- ArrayList

note top of Object : In java, every class\nextends this one.

note &#34;This is a floating note&#34; as N1
note &#34;This note is connected\nto several objects.&#34; as N2
Object .. N2
N2 .. ArrayList

class Foo
note left: On last defined class

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="591" height="391" class="scale" src="../imgw/img-1dab387b5b418cfea3060cbc0a15b500.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><a style="position:relative;top:-38px;" name="23ca7846dedbb80a"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-117"></span><!-- ezoic_pub_ad_placeholder-117-longest_content-234x60-117-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-117-longest_content-468x60-117-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-117-longest_content-728x90-117-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-117-longest_content-970x90-117-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#10"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#10"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#10"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Mehr zu Notizen</h2><p></p><p></p> Es ist auch möglich einige HTML Tags wie (See <a href="creole.html">Creole expression</a>): <p></p><ul><li><code class="cod">&lt;b&gt;</code></li><li><code class="cod">&lt;u&gt;</code></li><li><code class="cod">&lt;i&gt;</code></li><li><code class="cod">&lt;s&gt;</code>, <code class="cod">&lt;del&gt;</code>, <code class="cod">&lt;strike&gt;</code></li><li><code class="cod">&lt;font color=&#34;#AAAAAA&#34;&gt;</code> or <code class="cod">&lt;font color=&#34;colorName&#34;&gt;</code></li><li><code class="cod">&lt;color:#AAAAAA&gt;</code> or <code class="cod">&lt;color:colorName&gt;</code></li><li><code class="cod">&lt;size:nn&gt;</code> to change font size</li><li><code class="cod">&lt;img src=&#34;file&#34;&gt;</code> or <code class="cod">&lt;img:file&gt;</code>: the file must be accessible by the filesystem</li></ul><p></p><p></p> Es ist auch möglich eine Notiz über mehrere Zeilen zu erstellen. <p></p> Eine Notiz bezogen auf die letzte definierte Klasse kann mit <code class="cod">note left</code>, <code class="cod">note right</code>, <code class="cod">note top</code> oder <code class="cod">note bottom</code> erstellt werden. <p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg6158d2709ef91651c5aba959ac8ba7d0" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img6158d2709ef91651c5aba959ac8ba7d0" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;6158d2709ef91651c5aba959ac8ba7d0&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;6158d2709ef91651c5aba959ac8ba7d0&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;6158d2709ef91651c5aba959ac8ba7d0&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre6158d2709ef91651c5aba959ac8ba7d0">@startuml

class Foo
note left: On last defined class

note top of Foo
  In java, &lt;size:18&gt;every&lt;/size&gt; &lt;u&gt;class&lt;/u&gt;
  &lt;b&gt;extends&lt;/b&gt;
  &lt;i&gt;this&lt;/i&gt; one.
end note

note as N1
  This note is &lt;u&gt;also&lt;/u&gt;
  &lt;b&gt;&lt;color:royalBlue&gt;on several&lt;/color&gt;
  &lt;s&gt;words&lt;/s&gt; lines
  And this is hosted by &lt;img:sourceforge.jpg&gt;
end note

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="579" height="210" class="scale" src="../imgw/img-6158d2709ef91651c5aba959ac8ba7d0.png"/></div></div></td></tr></tbody></table></p><p><a style="position:relative;top:-38px;" name="c909b0b5f0434a64"></a></p><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#11"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#11"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#11"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Note on field (field, attribute, member) or method</h2><p></p><p></p> It is possible to add a note on field (field, attribute, member) or on method. <p></p><h3>⚠ Constraint</h3><ul><li>This cannot be used with <code class="cod">top</code> or <code class="cod">bottom</code><em>(only <code class="cod">left</code> and <code class="cod">right</code> are implemented)</em></li><li>This cannot be used with namespaceSeparator <code class="cod">::</code></li></ul><p></p><p></p><h3>Note on field or method</h3><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msga95a880f6bb23019c7c1c5a3e6430e4f" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imga95a880f6bb23019c7c1c5a3e6430e4f" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;a95a880f6bb23019c7c1c5a3e6430e4f&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;a95a880f6bb23019c7c1c5a3e6430e4f&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;a95a880f6bb23019c7c1c5a3e6430e4f&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prea95a880f6bb23019c7c1c5a3e6430e4f">@startuml
class A {
{static} int counter
+void {abstract} start(int timeout)
}
note right of A::counter
  This member is annotated
end note
note right of A::start
  This method is now explained in a UML note
end note
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="483" height="96" class="scale" src="../imgw/img-a95a880f6bb23019c7c1c5a3e6430e4f.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p></p><h3>Note on method with the same name</h3><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg7abe5d8328f434328a71497c6a45d5a8" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img7abe5d8328f434328a71497c6a45d5a8" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;7abe5d8328f434328a71497c6a45d5a8&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;7abe5d8328f434328a71497c6a45d5a8&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;7abe5d8328f434328a71497c6a45d5a8&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre7abe5d8328f434328a71497c6a45d5a8">@startuml
class A {
{static} int counter
+void {abstract} start(int timeoutms)
+void {abstract} start(Duration timeout)
}
note left of A::counter
  This member is annotated
end note
note right of A::&#34;start(int timeoutms)&#34;
  This method with int
end note
note right of A::&#34;start(Duration timeout)&#34;
  This method with Duration
end note
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="621" height="113" class="scale" src="../imgw/img-7abe5d8328f434328a71497c6a45d5a8.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><em>[Ref. <a href="https://forum.plantuml.net/3474">QA-3474</a> and <a href="https://forum.plantuml.net/5835">QA-5835</a>]</em><a style="position:relative;top:-38px;" name="1d010d898a1fead2"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-118"></span><!-- ezoic_pub_ad_placeholder-118-incontent_5-234x60-118-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-118-incontent_5-468x60-118-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-118-incontent_5-728x90-118-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-118-incontent_5-970x90-118-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#12"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#12"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#12"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Notizen zu Beziehungen</h2><p></p><p></p> Eine Notiz zu einer Beziehung kann direkt nach der Beziehungsdefinition erfolgen: <code class="cod">note on link</code>. <p></p> Zur relativen Positionierung der Notiz können die Schlüsselwörter <code class="cod">note left on link</code>, <code class="cod">note right on link</code>, <code class="cod">note top on link</code>, <code class="cod">note bottom on link</code> verwendet werden. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg9c8025b84db011f9b1187875866723fa" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img9c8025b84db011f9b1187875866723fa" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;9c8025b84db011f9b1187875866723fa&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;9c8025b84db011f9b1187875866723fa&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;9c8025b84db011f9b1187875866723fa&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre9c8025b84db011f9b1187875866723fa">@startuml

class Dummy
Dummy --&gt; Foo : A link
note on link #red: note that is red

Dummy --&gt; Foo2 : Another link
note right on link #blue
this is my note on right link
and in blue
end note

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="436" height="223" class="scale" src="../imgw/img-9c8025b84db011f9b1187875866723fa.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><a style="position:relative;top:-38px;" name="a339d3559f33ad64"></a><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#13"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#13"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#13"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Abstrakte Klassen und Interfaces</h2><p></p><p></p> Eine abstrakte Klasse lässt sich über das <code class="cod">abstract</code> oder das <code class="cod">abstract class</code> Schlüsselwort definieren. Die Klasse wird dann kursiv gedruckt. <p></p> Man kann auch die <code class="cod">interface</code>, <code class="cod">annotation</code> und <code class="cod">enum</code> Schlüsselwörter verwenden. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg1a6689bc764659a115100f417895b670" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img1a6689bc764659a115100f417895b670" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;1a6689bc764659a115100f417895b670&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;1a6689bc764659a115100f417895b670&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;1a6689bc764659a115100f417895b670&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre1a6689bc764659a115100f417895b670">@startuml

abstract class AbstractList
abstract AbstractCollection
interface List
interface Collection

List &lt;|-- AbstractList
Collection &lt;|-- AbstractCollection

Collection &lt;|- List
AbstractCollection &lt;|- AbstractList
AbstractList &lt;|-- ArrayList

class ArrayList {
  Object[] elementData
  size()
}

enum TimeUnit {
  DAYS
  HOURS
  MINUTES
}

annotation SuppressWarnings

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="571" height="365" class="scale" src="../imgw/img-1a6689bc764659a115100f417895b670.png"/></div></div></td></tr></tbody></table></p><p></p><p></p> *[Ref. &#39;Annotation with members&#39; [Issue#458](https://github.com/plantuml/plantuml/issues/458)]* <center><div class="tago">WARNING</div> <b>This translation need to be updated.</b> <div class="tago">WARNING</div></center><a style="position:relative;top:-38px;" name="6a8ec84e53ede3ae"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-119"></span><!-- ezoic_pub_ad_placeholder-119-incontent_6-234x60-119-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-119-incontent_6-468x60-119-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-119-incontent_6-728x90-119-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-119-incontent_6-970x90-119-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#14"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#14"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#14"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Verstecken von Attributen, Methoden ...</h2><p></p> Die Anzeige einer Klasse kann über das <code class="cod">hide/show</code> Kommando parametrisiert werden. <p></p> Der Basisbefehl ist <code class="cod">hide empty members</code>. Mit diesem Befehl werden leere Atribute und Methoden ausgeblendet. <p></p> Anstelle von <code class="cod">empty members</code> kann man auch die folgenden Befehle verwenden: <ul><li><code class="cod">empty fields</code> oder <code class="cod">empty attributes</code> für leere Felder,</li><li><code class="cod">empty methods</code> für leere Methoden,</li><li><code class="cod">fields</code> oder <code class="cod">attributes</code> um Felder auszublenden, auch wenn diese definiert sind,</li><li><code class="cod">methods</code> um Methoden auszublenden, auch wenn diese definiert sind,</li><li><code class="cod">members</code> um Methoden und Felder auszublenden, auch wenn diese definiert sind,</li><li><code class="cod">circle</code> um einen in einen Kreis eingeschlossenen Buchstaben vor dem Klassennamen anzuzeigen,</li><li><code class="cod">stereotype</code> um einen Stereotypen anzuzeigen.</li></ul> Nach dem <code class="cod">hide</code> oder dem <code class="cod">show</code> Schlüsselwort kann man auch noch die folgenden Befehle anfügen: <ul><li><code class="cod">class</code> für alle Klassen,</li><li><code class="cod">interface</code> für alle Schnittstellen,</li><li><code class="cod">enum</code> für alle Enums,</li><li><code class="cod">&lt;&lt;foo1&gt;&gt;</code> für alle Klassen, die mit dem Stereotyp <em>foo1</em> ausgezeichnet sind,</li><li>einen namen einer existierenden Klasse.</li></ul><p></p> Es lassen sich mehrere <code class="cod">show/hide</code> Befehle verketten, um Regeln und ausnahmen festzulegen. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msga9625958027a1113526ba1ebc568801d" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imga9625958027a1113526ba1ebc568801d" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;a9625958027a1113526ba1ebc568801d&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;a9625958027a1113526ba1ebc568801d&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;a9625958027a1113526ba1ebc568801d&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prea9625958027a1113526ba1ebc568801d">@startuml

class Dummy1 {
  +myMethods()
}

class Dummy2 {
  +hiddenMethod()
}

class Dummy3 &lt;&lt;Serializable&gt;&gt; {
String name
}

hide members
hide &lt;&lt;Serializable&gt;&gt; circle
show Dummy1 methods
show &lt;&lt;Serializable&gt;&gt; fields

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="243" height="199" class="scale" src="../imgw/img-a9625958027a1113526ba1ebc568801d.png"/></div></div></td></tr></tbody></table></p><p><a style="position:relative;top:-38px;" name="20ec7d48c223b142"></a></p><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#15"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#15"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#15"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Verstecken von Klassen</h2><p></p><p></p> Mit den <code class="cod">show/hide</code> Befehlen können Klassen versteckt werden. <p></p> Dies kann hilfreich sein, wenn man eine große <a href="preprocessing.html">!included</a> Datei verwendet und dann einige Klassen nach dem <a href="preprocessing.html">einbinden der Datei</a> verstecken möchte. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg7c41dc3b9e056a73390a4a6352785202" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img7c41dc3b9e056a73390a4a6352785202" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;7c41dc3b9e056a73390a4a6352785202&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;7c41dc3b9e056a73390a4a6352785202&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;7c41dc3b9e056a73390a4a6352785202&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre7c41dc3b9e056a73390a4a6352785202">@startuml

class Foo1
class Foo2

Foo2 *-- Foo1

hide Foo2

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="78" height="169" class="scale" src="../imgw/img-7c41dc3b9e056a73390a4a6352785202.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><center><div class="tago">WARNING</div> <b>This translation need to be updated.</b> <div class="tago">WARNING</div></center><a style="position:relative;top:-38px;" name="3efa75742a5e3384"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-120"></span><!-- ezoic_pub_ad_placeholder-120-incontent_7-234x60-120-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-120-incontent_7-468x60-120-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-120-incontent_7-728x90-120-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-120-incontent_7-970x90-120-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#16"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#16"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#16"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Klassen entfernen</h2><p></p> Sie können auch den Befehl <code class="cod">remove</code> verwenden, um Klassen zu entfernen. <p></p> Dies kann nützlich sein, wenn Sie eine große <a href="preprocessing.html">!included-Datei</a> definieren, und wenn Sie einige Klassen nach dem <a href="preprocessing.html">einbinden der Datei</a> entfernen möchten. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgfeb0b674668fd60d6a489dd998a76559" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgfeb0b674668fd60d6a489dd998a76559" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;feb0b674668fd60d6a489dd998a76559&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;feb0b674668fd60d6a489dd998a76559&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;feb0b674668fd60d6a489dd998a76559&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prefeb0b674668fd60d6a489dd998a76559">@startuml

class Foo1
class Foo2

Foo2 *-- Foo1

remove Foo2

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="78" height="61" class="scale" src="../imgw/img-feb0b674668fd60d6a489dd998a76559.png"/></div></div></td></tr></tbody></table></p><p><a style="position:relative;top:-38px;" name="c0ef243486e3ad85"></a></p><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#17"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#17"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#17"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Hide, Remove or Restore tagged element or wildcard</h2><p></p> You can put <code class="cod">$tags</code> (using <code class="cod">$</code>) on elements, then remove, hide or restore components either individually or by tags. <p></p> By default, all components are displayed: <p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msga333f129b395367cb7aad6c78aad31c4" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imga333f129b395367cb7aad6c78aad31c4" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;a333f129b395367cb7aad6c78aad31c4&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;a333f129b395367cb7aad6c78aad31c4&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;a333f129b395367cb7aad6c78aad31c4&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prea333f129b395367cb7aad6c78aad31c4">@startuml
class C1 $tag13
enum E1
interface I1 $tag13
C1 -- I1
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="147" height="169" class="scale" src="../imgw/img-a333f129b395367cb7aad6c78aad31c4.png"/></div></div></td></tr></tbody></table></p><p></p><p></p> But you can: <ul><li><code class="cod">hide $tag13</code> components:</li></ul><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgaeda65473c554e4de42411e74f6910a6" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgaeda65473c554e4de42411e74f6910a6" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;aeda65473c554e4de42411e74f6910a6&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;aeda65473c554e4de42411e74f6910a6&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;aeda65473c554e4de42411e74f6910a6&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="preaeda65473c554e4de42411e74f6910a6">@startuml
class C1 $tag13
enum E1
interface I1 $tag13
C1 -- I1

hide $tag13
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="147" height="169" class="scale" src="../imgw/img-aeda65473c554e4de42411e74f6910a6.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><ul><li>or <code class="cod">remove $tag13</code> components:</li></ul><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg19ff75ab006454609ec48154d67c4cef" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img19ff75ab006454609ec48154d67c4cef" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;19ff75ab006454609ec48154d67c4cef&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;19ff75ab006454609ec48154d67c4cef&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;19ff75ab006454609ec48154d67c4cef&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre19ff75ab006454609ec48154d67c4cef">@startuml
class C1 $tag13
enum E1
interface I1 $tag13
C1 -- I1

remove $tag13
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="62" height="61" class="scale" src="../imgw/img-19ff75ab006454609ec48154d67c4cef.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><ul><li>or <code class="cod">remove $tag13 and restore $tag1</code> components:</li></ul><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg360bf0f52029eea343cd6540f9aaea1e" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img360bf0f52029eea343cd6540f9aaea1e" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;360bf0f52029eea343cd6540f9aaea1e&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;360bf0f52029eea343cd6540f9aaea1e&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;360bf0f52029eea343cd6540f9aaea1e&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre360bf0f52029eea343cd6540f9aaea1e">@startuml
class C1 $tag13 $tag1
enum E1
interface I1 $tag13
C1 -- I1

remove $tag13
restore $tag1
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="147" height="61" class="scale" src="../imgw/img-360bf0f52029eea343cd6540f9aaea1e.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><ul><li>or <code class="cod">remove * and restore $tag1</code> components:</li></ul><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg3d1703423d8dc7cb77afc134630a8c12" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img3d1703423d8dc7cb77afc134630a8c12" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;3d1703423d8dc7cb77afc134630a8c12&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;3d1703423d8dc7cb77afc134630a8c12&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;3d1703423d8dc7cb77afc134630a8c12&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre3d1703423d8dc7cb77afc134630a8c12">@startuml
class C1 $tag13 $tag1
enum E1
interface I1 $tag13
C1 -- I1

remove *
restore $tag1
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="6" height="6" class="scale" src="../imgw/img-3d1703423d8dc7cb77afc134630a8c12.png"/></div></div></td></tr></tbody></table></p><p><a style="position:relative;top:-38px;" name="382f74cc79c4edbc"></a></p><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-121"></span><!-- ezoic_pub_ad_placeholder-121-incontent_8-234x60-121-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-121-incontent_8-468x60-121-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-121-incontent_8-728x90-121-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-121-incontent_8-970x90-121-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#18"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#18"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#18"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Hide or Remove unlinked class</h2><p></p> By default, all classes are displayed: <p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg090cb556106c728d56578df1efcf2700" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img090cb556106c728d56578df1efcf2700" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;090cb556106c728d56578df1efcf2700&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;090cb556106c728d56578df1efcf2700&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;090cb556106c728d56578df1efcf2700&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre090cb556106c728d56578df1efcf2700">@startuml
class C1
class C2
class C3
C1 -- C2
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="148" height="169" class="scale" src="../imgw/img-090cb556106c728d56578df1efcf2700.png"/></div></div></td></tr></tbody></table></p><p></p><p></p> But you can: <ul><li><code class="cod">hide @unlinked</code> classes:</li></ul><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg8bc4c8bcece488747d2d159d897b87f9" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img8bc4c8bcece488747d2d159d897b87f9" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;8bc4c8bcece488747d2d159d897b87f9&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;8bc4c8bcece488747d2d159d897b87f9&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;8bc4c8bcece488747d2d159d897b87f9&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre8bc4c8bcece488747d2d159d897b87f9">@startuml
class C1
class C2
class C3
C1 -- C2

hide @unlinked
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="148" height="169" class="scale" src="../imgw/img-8bc4c8bcece488747d2d159d897b87f9.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><ul><li>or <code class="cod">remove @unlinked</code> classes:</li></ul><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgf1337745f01d853f42df3638d3f2e854" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgf1337745f01d853f42df3638d3f2e854" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;f1337745f01d853f42df3638d3f2e854&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;f1337745f01d853f42df3638d3f2e854&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;f1337745f01d853f42df3638d3f2e854&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pref1337745f01d853f42df3638d3f2e854">@startuml
class C1
class C2
class C3
C1 -- C2

remove @unlinked
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="63" height="169" class="scale" src="../imgw/img-f1337745f01d853f42df3638d3f2e854.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p></p><em>[Adapted from <a href="https://forum.plantuml.net/11052">QA-11052</a>]</em><a style="position:relative;top:-38px;" name="b09695ba6d76313d"></a><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#19"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#19"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#19"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Verwenden von Generics</h2><p></p><p></p> Mit spitzen Klammern ( <code class="cod">&lt;</code> und <code class="cod">&gt;</code>) kann die Verwendung von Generics dargestellt werden. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg4dd6659fc9513a8e202d1f350d2d481b" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img4dd6659fc9513a8e202d1f350d2d481b" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;4dd6659fc9513a8e202d1f350d2d481b&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;4dd6659fc9513a8e202d1f350d2d481b&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;4dd6659fc9513a8e202d1f350d2d481b&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre4dd6659fc9513a8e202d1f350d2d481b">@startuml

class Foo&lt;? extends Element&gt; {
  int size()
}
Foo *- Element

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="294" height="81" class="scale" src="../imgw/img-4dd6659fc9513a8e202d1f350d2d481b.png"/></div></div></td></tr></tbody></table></p><p></p><p></p> Man kann diese Darstellung mittels des Befehls <code class="cod">skinparam genericDisplay old</code> ausschalten. <p></p><a style="position:relative;top:-38px;" name="4b62dd14f1d33739"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-122"></span><!-- ezoic_pub_ad_placeholder-122-incontent_9-234x60-122-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-122-incontent_9-468x60-122-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-122-incontent_9-728x90-122-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-122-incontent_9-970x90-122-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#20"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#20"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#20"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Besondere Hervorhebungen</h2><p></p> Normalerweise werden Klassen, Schnittstellen, Enums und abstrakte Klassen mit einem hervorgehobenen Buchstaben gekennzeichnet (C, I, E or A). <p></p> Es ist aber auch möglich eine eigene Hervorhebung zu erstellen wenn man einen Stereotyp definiert. Das wird durch hinzufügen eines einzelnen Buchstabens und einer Farbe so wie im folgenden Beispiel erreicht: <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msga8c669a19738abf19742957faad2f7c2" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imga8c669a19738abf19742957faad2f7c2" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;a8c669a19738abf19742957faad2f7c2&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;a8c669a19738abf19742957faad2f7c2&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;a8c669a19738abf19742957faad2f7c2&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prea8c669a19738abf19742957faad2f7c2">@startuml

class System &lt;&lt; (S,#FF7700) Singleton &gt;&gt;
class Date &lt;&lt; (D,orchid) &gt;&gt;
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="204" height="71" class="scale" src="../imgw/img-a8c669a19738abf19742957faad2f7c2.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><a style="position:relative;top:-38px;" name="27fe4eb3edbaff8f"></a><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#21"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#21"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#21"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Pakete</h2><p></p> Pakete können über das <code class="cod">package</code> Schlüsselwort definiert werden. Auf Wunsch kann außerdem die die Hintergrundfarbe für das Paket festgelegt werden. Dies kann durch den Farbnamen oder den HTML Code geschehen. <p></p> Es ist möglich, Pakete ineinander zu schachteln. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgd005f12135134e8deae07627661a1acb" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgd005f12135134e8deae07627661a1acb" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;d005f12135134e8deae07627661a1acb&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;d005f12135134e8deae07627661a1acb&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;d005f12135134e8deae07627661a1acb&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pred005f12135134e8deae07627661a1acb">@startuml

package &#34;Classic Collections&#34; #DDDDDD {
  Object &lt;|-- ArrayList
}

package net.sourceforge.plantuml {
  Object &lt;|-- Demo1
  Demo1 *- Demo2
}

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="503" height="348" class="scale" src="../imgw/img-d005f12135134e8deae07627661a1acb.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p></p><center><div class="tago">WARNING</div> <b>This translation need to be updated.</b> <div class="tago">WARNING</div></center><a style="position:relative;top:-38px;" name="a05971470d7fd711"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-123"></span><!-- ezoic_pub_ad_placeholder-123-incontent_10-234x60-123-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-123-incontent_10-468x60-123-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-123-incontent_10-728x90-123-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-123-incontent_10-970x90-123-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#22"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#22"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#22"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Paketarten</h2><p></p> Es stehen verschiedene Arten von Paketen zur Verfügung. <p></p> Welches Paket zur Verwendung kommen soll, kann mit dem Befehl <code class="cod">skinparam packageStyle</code> festgelegt werden. Alternativ kann ein Stereotyp in der Paketdefinition verwendet werden. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgbd8a6d046e1a615dcaba28365dd61032" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgbd8a6d046e1a615dcaba28365dd61032" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;bd8a6d046e1a615dcaba28365dd61032&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;bd8a6d046e1a615dcaba28365dd61032&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;bd8a6d046e1a615dcaba28365dd61032&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prebd8a6d046e1a615dcaba28365dd61032">@startuml
scale 750 width
package foo1 &lt;&lt;Node&gt;&gt; {
  class Class1
}

package foo2 &lt;&lt;Rectangle&gt;&gt; {
  class Class2
}

package foo3 &lt;&lt;Folder&gt;&gt; {
  class Class3
}

package foo4 &lt;&lt;Frame&gt;&gt; {
  class Class4
}

package foo5 &lt;&lt;Cloud&gt;&gt; {
  class Class5
}

package foo6 &lt;&lt;Database&gt;&gt; {
  class Class6
}

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="750" height="128" class="scale" src="../imgw/img-bd8a6d046e1a615dcaba28365dd61032.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p></p> Außerdem ist es möglich, Abhängigkeiten zwischen Paketen zu definieren, wie dies im folgenden Beispiel gezeigt wird: <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgf4e65205bdeed93025fc42bba7b61f5a" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgf4e65205bdeed93025fc42bba7b61f5a" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;f4e65205bdeed93025fc42bba7b61f5a&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;f4e65205bdeed93025fc42bba7b61f5a&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;f4e65205bdeed93025fc42bba7b61f5a&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pref4e65205bdeed93025fc42bba7b61f5a">@startuml

skinparam packageStyle rectangle

package foo1.foo2 {
}

package foo1.foo2.foo3 {
  class Object
}

foo1.foo2 +-- foo1.foo2.foo3

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="297" height="320" class="scale" src="../imgw/img-f4e65205bdeed93025fc42bba7b61f5a.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><a style="position:relative;top:-38px;" name="13d28e8dfc702e34"></a><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#23"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#23"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#23"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Namensraum</h2><p></p> In Paketen ist der Name einer Klasse der eindeutige Bezeichner der Klasse. Das bedeutet, das man nicht zwei Klassen mit dem gleichen Namen in unterschiedlichen Paketen haben kann. <p></p> In diesem Fall sollte <a href="http://en.wikipedia.org/wiki/Namespace_%28computer_science%29">ein Namensraum</a> anstelle eine Pakets verwendet werden. <p></p> Man kann auf eine Klasse aus einem anderen Namensraum verweisen, in dem man den voll qualifizierten Namen der Klasse angibt. Klassen aus dem Standartnamensraum werden mit einem beginnenden Punkt gekennzeichnet. <p></p> Beachten Sie, das ein Namensraum nicht explizit festgelegt werden muss: Eine vollqulifizierte Klasse verwendet automatisch den richtigen Namensraum. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgdb1fbb6ec9485329af7eba668f3c8535" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgdb1fbb6ec9485329af7eba668f3c8535" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;db1fbb6ec9485329af7eba668f3c8535&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;db1fbb6ec9485329af7eba668f3c8535&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;db1fbb6ec9485329af7eba668f3c8535&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="predb1fbb6ec9485329af7eba668f3c8535">@startuml

class BaseClass

namespace net.dummy #DDDDDD {
    .BaseClass &lt;|-- Person
    Meeting o-- Person

    .BaseClass &lt;|- Meeting
}

namespace net.foo {
  net.dummy.Person  &lt;|- Person
  .BaseClass &lt;|-- Person

  net.dummy.Meeting o-- Person
}

BaseClass &lt;|-- net.unused.Person

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="441" height="356" class="scale" src="../imgw/img-db1fbb6ec9485329af7eba668f3c8535.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p></p><p></p><p></p> There won&#39;t be any difference between namespaces and packages anymore: both keywords are now synonymous. <p></p><center><div class="tago">WARNING</div> <b>This translation need to be updated.</b> <div class="tago">WARNING</div></center><a style="position:relative;top:-38px;" name="0d2504841361d7da"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-194"></span><!-- ezoic_pub_ad_placeholder-194-incontent_11-234x60-194-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-194-incontent_11-468x60-194-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-194-incontent_11-728x90-194-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-194-incontent_11-970x90-194-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#24"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#24"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#24"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Automatische Erzeugung eines Namensraums</h2><p></p> Über folgenden Befehl kann ein anderes Trennzeichen (als der Punkt) definiert werden: <code class="cod">set namespaceSeparator ???</code>. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msge452fa75f7599d298d357d2137e152d6" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imge452fa75f7599d298d357d2137e152d6" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;e452fa75f7599d298d357d2137e152d6&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;e452fa75f7599d298d357d2137e152d6&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;e452fa75f7599d298d357d2137e152d6&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pree452fa75f7599d298d357d2137e152d6">@startuml

set namespaceSeparator ::
class X1::X2::foo {
  some info
}

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="166" height="198" class="scale" src="../imgw/img-e452fa75f7599d298d357d2137e152d6.png"/></div></div></td></tr></tbody></table></p><p></p><p></p> Die automatische Erzeugung eines Pakets kann mit <code class="cod">set namespaceSeparator none</code> deaktiviert werden. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg2f5aa57ab85a69d372111b856d18697c" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img2f5aa57ab85a69d372111b856d18697c" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;2f5aa57ab85a69d372111b856d18697c&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;2f5aa57ab85a69d372111b856d18697c&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;2f5aa57ab85a69d372111b856d18697c&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre2f5aa57ab85a69d372111b856d18697c">@startuml

set namespaceSeparator none
class X1.X2.foo {
  some info
}

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="112" height="85" class="scale" src="../imgw/img-2f5aa57ab85a69d372111b856d18697c.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p></p><p></p><center><div class="tago">WARNING</div> <b>This translation need to be updated.</b> <div class="tago">WARNING</div></center><a style="position:relative;top:-38px;" name="8b64d7547fa4f699"></a><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#25"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#25"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#25"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Lollipop Schnittstellen</h2><p></p><p></p> Mit der folgenden Syntax kann man Schnittstellen von Klassen definieren: <ul><li><code class="cod">bar ()- foo</code></li><li><code class="cod">bar ()-- foo</code></li><li><code class="cod">foo -() bar</code></li></ul><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgac105007c57864b3e0763f484b171dc4" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgac105007c57864b3e0763f484b171dc4" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;ac105007c57864b3e0763f484b171dc4&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;ac105007c57864b3e0763f484b171dc4&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;ac105007c57864b3e0763f484b171dc4&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="preac105007c57864b3e0763f484b171dc4">@startuml
class foo
bar ()- foo
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="114" height="61" class="scale" src="../imgw/img-ac105007c57864b3e0763f484b171dc4.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><a style="position:relative;top:-38px;" name="5a6e75f1261e3d91"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-195"></span><!-- ezoic_pub_ad_placeholder-195-incontent_12-234x60-195-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-195-incontent_12-468x60-195-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-195-incontent_12-728x90-195-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-195-incontent_12-970x90-195-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#26"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#26"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#26"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Ändern der Pfeilrichtung</h2><p></p> Normalerweise werden Beziehungen zwischen Klassen mit zwei Strichen <code class="cod">--</code> definiert und die Klassen werden Vertikal angeordnet. Verwendet man nur einen Strich (oder Punkt), dann werden die Klassen horizontal angeordnet so wie im folgenden Beispiel zu sehen ist: <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msga335c52f33e267127e6686dde9ce2674" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imga335c52f33e267127e6686dde9ce2674" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;a335c52f33e267127e6686dde9ce2674&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;a335c52f33e267127e6686dde9ce2674&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;a335c52f33e267127e6686dde9ce2674&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prea335c52f33e267127e6686dde9ce2674">@startuml
Room o- Student
Room *-- Chair
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="198" height="169" class="scale" src="../imgw/img-a335c52f33e267127e6686dde9ce2674.png"/></div></div></td></tr></tbody></table></p><p></p><p></p> Man kann die Richtung auch durch das Umdrehen der Verbindung ändern: <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msga063ddff1d1e34c9d23a968dfdb5fdc2" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imga063ddff1d1e34c9d23a968dfdb5fdc2" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;a063ddff1d1e34c9d23a968dfdb5fdc2&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;a063ddff1d1e34c9d23a968dfdb5fdc2&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;a063ddff1d1e34c9d23a968dfdb5fdc2&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prea063ddff1d1e34c9d23a968dfdb5fdc2">@startuml
Student -o Room
Chair --* Room
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="198" height="169" class="scale" src="../imgw/img-a063ddff1d1e34c9d23a968dfdb5fdc2.png"/></div></div></td></tr></tbody></table></p><p></p><p></p> Außerdem ist es möglich, die Richtung der Pfeile durch Hinzufügen der <code class="cod">left</code>, <code class="cod">right</code>, <code class="cod">up</code> oder <code class="cod">down</code> Schlüsselwörter innerhalb der Pfeile zu verändern: <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgd97b6a005afdd2ed42faf93ea9ef05ff" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgd97b6a005afdd2ed42faf93ea9ef05ff" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;d97b6a005afdd2ed42faf93ea9ef05ff&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;d97b6a005afdd2ed42faf93ea9ef05ff&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;d97b6a005afdd2ed42faf93ea9ef05ff&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pred97b6a005afdd2ed42faf93ea9ef05ff">@startuml
foo -left-&gt; dummyLeft
foo -right-&gt; dummyRight
foo -up-&gt; dummyUp
foo -down-&gt; dummyDown
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="346" height="277" class="scale" src="../imgw/img-d97b6a005afdd2ed42faf93ea9ef05ff.png"/></div></div></td></tr></tbody></table></p><p></p><p></p> Die Länge der Pfeile kann verkürzt werden, in dem man nur den ersten Buchstaben für die Richtung verwendet (zum Beispiel, <code class="cod">-d-</code> anstelle von <code class="cod">-down-</code>) oder die ersten beiden Buchstaben (<code class="cod">-do-</code>) <p></p> Bitte verwenden Sie diese Möglichkeit nur wenn es unbedingt sein muss: <em>GraphViz</em> liefert normalerweise recht gute Ergebnisse ohne das manuell eingegriffen werden muss. <p></p><center><div class="tago">WARNING</div> <b>This translation need to be updated.</b> <div class="tago">WARNING</div></center><a style="position:relative;top:-38px;" name="fbbc0504d940020e"></a><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#27"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#27"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#27"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Assoziationsklassen</h2><p></p> Nach dem man eine Beziehung zwischen zwei Klassen definiert hat, kann man eine <em>association class</em> definieren. Hierzu ein Beispiel: <p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgb25efbc507617923ddfc5e95e02508b0" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgb25efbc507617923ddfc5e95e02508b0" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;b25efbc507617923ddfc5e95e02508b0&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;b25efbc507617923ddfc5e95e02508b0&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;b25efbc507617923ddfc5e95e02508b0&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="preb25efbc507617923ddfc5e95e02508b0">@startuml
class Student {
  Name
}
Student &#34;0..*&#34; - &#34;1..*&#34; Course
(Student, Course) .. Enrollment

class Enrollment {
  drop()
  cancel()
}
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="246" height="222" class="scale" src="../imgw/img-b25efbc507617923ddfc5e95e02508b0.png"/></div></div></td></tr></tbody></table></p><p></p><p></p> Die Richtung lässt ich aber auch ändern: <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgfd8a644e2f6ce6d083a8967329f69b7b" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgfd8a644e2f6ce6d083a8967329f69b7b" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;fd8a644e2f6ce6d083a8967329f69b7b&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;fd8a644e2f6ce6d083a8967329f69b7b&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;fd8a644e2f6ce6d083a8967329f69b7b&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prefd8a644e2f6ce6d083a8967329f69b7b">@startuml
class Student {
  Name
}
Student &#34;0..*&#34; -- &#34;1..*&#34; Course
(Student, Course) . Enrollment

class Enrollment {
  drop()
  cancel()
}
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="190" height="330" class="scale" src="../imgw/img-fd8a644e2f6ce6d083a8967329f69b7b.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><a style="position:relative;top:-38px;" name="43980c266e3ad62c"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-196"></span><!-- ezoic_pub_ad_placeholder-196-incontent_13-234x60-196-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-196-incontent_13-468x60-196-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-196-incontent_13-728x90-196-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-196-incontent_13-970x90-196-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#28"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#28"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#28"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Assoziation in derselben Klasse</h2><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msga68dad30df232644b7d71dcbbe6492a2" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imga68dad30df232644b7d71dcbbe6492a2" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;a68dad30df232644b7d71dcbbe6492a2&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;a68dad30df232644b7d71dcbbe6492a2&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;a68dad30df232644b7d71dcbbe6492a2&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prea68dad30df232644b7d71dcbbe6492a2">@startuml
class Station {
    +name: string
}

class StationCrossing {
    +cost: TimeInterval
}

&lt;&gt; diamond

StationCrossing . diamond
diamond - &#34;from 0..*&#34; Station
diamond - &#34;to 0..* &#34; Station
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="348" height="84" class="scale" src="../imgw/img-a68dad30df232644b7d71dcbbe6492a2.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><em>[Ref. <a href="http://wiki.plantuml.net/site/incubation#associations">Inkubation: Assoziationen</a>]</em><a style="position:relative;top:-38px;" name="7aa53dbdfc2137bf"></a><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#29"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#29"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#29"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Der Skinparam-Befehl</h2><p></p> Mit dem <a href="skinparam.html">skinparam</a> Befehl kann die Farbe und die Schriftart der Zeichnung verändert werden. <p></p> Sie können den Befehl auf die folgenden Arten verwenden: <ul><li>Wie alle ander Befehle In einer Diagrammdefinition,</li><li>in einer <a href="preprocessing.html">Include-Datei</a>,</li><li>In einer Konfigurationsdatei, die durch die <a href="command-line.html">Kommandozeile</a> oder den <a href="ant-task.html">ANT-Task</a> übergeben wird.</li></ul><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg74c37308ddc95897ba45634618cac67a" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img74c37308ddc95897ba45634618cac67a" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;74c37308ddc95897ba45634618cac67a&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;74c37308ddc95897ba45634618cac67a&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;74c37308ddc95897ba45634618cac67a&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre74c37308ddc95897ba45634618cac67a">@startuml

skinparam class {
BackgroundColor PaleGreen
ArrowColor SeaGreen
BorderColor SpringGreen
}
skinparam stereotypeCBackgroundColor YellowGreen

Class01 &#34;1&#34; *-- &#34;many&#34; Class02 : contains

Class03 o-- Class04 : aggregation

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="241" height="187" class="scale" src="../imgw/img-74c37308ddc95897ba45634618cac67a.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><a style="position:relative;top:-38px;" name="89a4c54a52d87715"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-197"></span><!-- ezoic_pub_ad_placeholder-197-incontent_14-234x60-197-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-197-incontent_14-468x60-197-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-197-incontent_14-728x90-197-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-197-incontent_14-970x90-197-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#30"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#30"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#30"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Das Aussehen von Stereotypen verändern</h2><p></p><p></p> Es ist möglich die Farbe und die Schriftart der Klassen zu verändern, die mit einem Stereotypen ausgezeichnet sind. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgc21fd18ba4f6884e96865968f5c7b358" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgc21fd18ba4f6884e96865968f5c7b358" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;c21fd18ba4f6884e96865968f5c7b358&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;c21fd18ba4f6884e96865968f5c7b358&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;c21fd18ba4f6884e96865968f5c7b358&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prec21fd18ba4f6884e96865968f5c7b358">@startuml

skinparam class {
BackgroundColor PaleGreen
ArrowColor SeaGreen
BorderColor SpringGreen
BackgroundColor&lt;&lt;Foo&gt;&gt; Wheat
BorderColor&lt;&lt;Foo&gt;&gt; Tomato
}
skinparam stereotypeCBackgroundColor YellowGreen
skinparam stereotypeCBackgroundColor&lt;&lt; Foo &gt;&gt; DimGray

Class01 &lt;&lt;Foo&gt;&gt;
Class03 &lt;&lt;Foo&gt;&gt;
Class01 &#34;1&#34; *-- &#34;many&#34; Class02 : contains

Class03 o-- Class04 : aggregation

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="209" height="262" class="scale" src="../imgw/img-c21fd18ba4f6884e96865968f5c7b358.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p></p><center><div class="tago">WARNING</div> <b>This translation need to be updated.</b> <div class="tago">WARNING</div></center><a style="position:relative;top:-38px;" name="cfe920390b501516"></a><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#31"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#31"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#31"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Farbverlauf</h2><p></p><p></p> Mit der # Notation können individuelle Farben für Klassen oder Notizen definiert werden. <p></p> Es kann entweder der Standardname der Farbe oder der RGB Code verwendet werden. <p></p> Für den Hintergrund kann ebenfalls ein Farbverlauf verwendet werden: Zwei Farbnamen getrennt durch: <ul><li><code class="cod">|</code>,</li><li><code class="cod">/</code>,</li><li><code class="cod">\</code>,</li><li>oder <code class="cod">-</code></li></ul> abhängig von der Richtung des Verlaufs. <p></p> So könnte dies zum Beispiel aussehen: <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg423df2014a59b6c725204535facb7cf1" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img423df2014a59b6c725204535facb7cf1" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;423df2014a59b6c725204535facb7cf1&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;423df2014a59b6c725204535facb7cf1&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;423df2014a59b6c725204535facb7cf1&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre423df2014a59b6c725204535facb7cf1">@startuml

skinparam backgroundcolor AntiqueWhite/Gold
skinparam classBackgroundColor Wheat|CornflowerBlue

class Foo #red-green
note left of Foo #blue\9932CC
  this is my
  note on this class
end note

package example #GreenYellow/LightGoldenRodYellow {
  class Dummy
}

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="359" height="112" class="scale" src="../imgw/img-423df2014a59b6c725204535facb7cf1.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><center><div class="tago">WARNING</div> <b>This translation need to be updated.</b> <div class="tago">WARNING</div></center><a style="position:relative;top:-38px;" name="c08f8d9927fcb626"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-198"></span><!-- ezoic_pub_ad_placeholder-198-incontent_15-234x60-198-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-198-incontent_15-468x60-198-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-198-incontent_15-728x90-198-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-198-incontent_15-970x90-198-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#32"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#32"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#32"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Hilfe beim Layout</h2><p></p> Manchmal ist das vorgegebene Layout nicht optimal. <p></p> Sie können das <code class="cod">together</code> Schlüsselwort benutzen, um der Layout-Engine die Anweisung zu geben einige Klassen zu gruppieren (ähnlich einem <code class="cod">package</code>). <p></p> Mit <code class="cod">hidden</code> Links kann man auch ein Layout erzwingen. <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg10f6027942c3aff56469c142c2c296d8" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img10f6027942c3aff56469c142c2c296d8" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;10f6027942c3aff56469c142c2c296d8&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;10f6027942c3aff56469c142c2c296d8&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;10f6027942c3aff56469c142c2c296d8&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre10f6027942c3aff56469c142c2c296d8">@startuml

class Bar1
class Bar2
together {
  class Together1
  class Together2
  class Together3
}
Together1 - Together2
Together2 - Together3
Together2 -[hidden]--&gt; Bar1
Bar1 -[hidden]&gt; Bar2


@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="377" height="230" class="scale" src="../imgw/img-10f6027942c3aff56469c142c2c296d8.png"/></div></div></td></tr></tbody></table></p><p><a style="position:relative;top:-38px;" name="fc6a662f75b53104"></a></p><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#33"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#33"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#33"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Große Dateien aufteilen</h2><p></p> Manchmal erhält man sehr große Bilddateien.Mit dem <code class="cod">page (hpages)x(vpages)</code> Befehl kann das erzeugte Bildauf mehrere Dateien verteilt werden: <p></p> Mit dem <code class="cod">page (hpages)x(vpages)</code> Befehl kann das erzeugte Bild auf mehrere Dateien aufgeteilt werden: <p></p><code class="cod">hpages</code> gibt die Anzahl von horizontalen Seiten an, und <code class="cod">vpages</code> gibt die Anzahl von vertikalen Seiten an. <p></p> Die Verwendung von <code class="cod">skinparam</code> Definitionen, ermöglicht die Darstellung von Außenrahmen für mehrseitige Bilder. (Siehe nachfolgendes Beispiel) <p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg1159fb9c4b34e69b9d160fa18a5b8ab9" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img1159fb9c4b34e69b9d160fa18a5b8ab9" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;1159fb9c4b34e69b9d160fa18a5b8ab9&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;1159fb9c4b34e69b9d160fa18a5b8ab9&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;1159fb9c4b34e69b9d160fa18a5b8ab9&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre1159fb9c4b34e69b9d160fa18a5b8ab9">@startuml
&#39; Split into 4 pages
page 2x2
skinparam pageMargin 10
skinparam pageExternalColor gray
skinparam pageBorderColor black

class BaseClass

namespace net.dummy #DDDDDD {
    .BaseClass &lt;|-- Person
    Meeting o-- Person

    .BaseClass &lt;|- Meeting

}

namespace net.foo {
  net.dummy.Person  &lt;|- Person
  .BaseClass &lt;|-- Person

  net.dummy.Meeting o-- Person
}

BaseClass &lt;|-- net.unused.Person
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="441" height="356" class="scale" src="../imgw/img-1159fb9c4b34e69b9d160fa18a5b8ab9.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p></p><a style="position:relative;top:-38px;" name="6e0d446ea2c5bf82"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-199"></span><!-- ezoic_pub_ad_placeholder-199-incontent_16-234x60-199-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-199-incontent_16-468x60-199-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-199-incontent_16-728x90-199-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-199-incontent_16-970x90-199-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#34"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#34"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#34"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Extends und Implements</h2><p></p> Es ist auch möglich, die Schlüsselwörter <code class="cod">extends</code> und <code class="cod">implements</code> zu verwenden. <p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgc67ae96bf8764499b822639d3feae97e" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgc67ae96bf8764499b822639d3feae97e" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;c67ae96bf8764499b822639d3feae97e&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;c67ae96bf8764499b822639d3feae97e&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;c67ae96bf8764499b822639d3feae97e&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prec67ae96bf8764499b822639d3feae97e">@startuml
class ArrayList implements List
class ArrayList extends AbstractList
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="208" height="169" class="scale" src="../imgw/img-c67ae96bf8764499b822639d3feae97e.png"/></div></div></td></tr></tbody></table></p><p><a style="position:relative;top:-38px;" name="4ffca7d13182195f"></a></p><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#35"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#35"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#35"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Design Möglichkeiten für Beziehungen (Verknüpfungen oder Pfeile)</h2><p></p><h3>Linienstil</h3> Es ist möglich einen expliziten Stil für Beziehungen (Verknüpfungen oder Pfeile) zu verwenden <code class="cod">bold</code>, <code class="cod">dashed</code>, <code class="cod">dotted</code>, <code class="cod">hidden</code> oder <code class="cod">plain</code> :<br/><p></p><ul><li>ohne Label</li></ul><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg92332dc9d7c03d31585535527e8c4c8b" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img92332dc9d7c03d31585535527e8c4c8b" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;92332dc9d7c03d31585535527e8c4c8b&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;92332dc9d7c03d31585535527e8c4c8b&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;92332dc9d7c03d31585535527e8c4c8b&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre92332dc9d7c03d31585535527e8c4c8b">@startuml
title Linienstile ohne Beschriftung
class foo
class bar
bar1 : [bold]  
bar2 : [dashed]
bar3 : [dotted]
bar4 : [hidden]
bar5 : [plain] 

foo --&gt; bar
foo -[bold]-&gt; bar1
foo -[dashed]-&gt; bar2
foo -[dotted]-&gt; bar3
foo -[hidden]-&gt; bar4
foo -[plain]-&gt; bar5
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="554" height="225" class="scale" src="../imgw/img-92332dc9d7c03d31585535527e8c4c8b.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><ul><li>mit Beschriftung</li></ul><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgea6677a64d3fb50f66a9acd2a42f2eee" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgea6677a64d3fb50f66a9acd2a42f2eee" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;ea6677a64d3fb50f66a9acd2a42f2eee&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;ea6677a64d3fb50f66a9acd2a42f2eee&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;ea6677a64d3fb50f66a9acd2a42f2eee&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="preea6677a64d3fb50f66a9acd2a42f2eee">@startuml
title Linienstile mit Beschriftung
class foo
class bar
bar1 : [bold]  
bar2 : [dashed]
bar3 : [dotted]
bar4 : [hidden]
bar5 : [plain] 

foo --&gt; bar          : ∅
foo -[bold]-&gt; bar1   : [bold]
foo -[dashed]-&gt; bar2 : [dashed]
foo -[dotted]-&gt; bar3 : [dotted]
foo -[hidden]-&gt; bar4 : [hidden]
foo -[plain]-&gt; bar5  : [plain]

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="554" height="243" class="scale" src="../imgw/img-ea6677a64d3fb50f66a9acd2a42f2eee.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><em>[Angepasst von <a href="https://forum.plantuml.net/4181/how-change-width-line-in-a-relationship-between-two-classes?show=4232#a4232">QA-4181</a>]</em><p></p><h3>Linienfarbe</h3><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg3a5b379443e3f32a7fb8b4b7172a1dc6" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img3a5b379443e3f32a7fb8b4b7172a1dc6" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;3a5b379443e3f32a7fb8b4b7172a1dc6&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;3a5b379443e3f32a7fb8b4b7172a1dc6&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;3a5b379443e3f32a7fb8b4b7172a1dc6&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre3a5b379443e3f32a7fb8b4b7172a1dc6">@startuml
title Farbige Linien
class foo
class bar
bar1 : [#red]
bar2 : [#green]
bar3 : [#blue]

foo --&gt; bar
foo -[#red]-&gt; bar1     : [#red]
foo -[#green]-&gt; bar2   : [#green]
foo -[#blue]-&gt; bar3    : [#blue]
&#39;foo -[#blue;#yellow;#green]-&gt; bar4
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="358" height="243" class="scale" src="../imgw/img-3a5b379443e3f32a7fb8b4b7172a1dc6.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><h3>Linienstärke</h3><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msga5676093b651b748dca02736ed4d250a" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imga5676093b651b748dca02736ed4d250a" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;a5676093b651b748dca02736ed4d250a&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;a5676093b651b748dca02736ed4d250a&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;a5676093b651b748dca02736ed4d250a&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prea5676093b651b748dca02736ed4d250a">@startuml
title Unterschiedlich dicke Linien
class foo
class bar
bar1 : [thickness=1]
bar2 : [thickness=2]
bar3 : [thickness=4]
bar4 : [thickness=8]
bar5 : [thickness=16]

foo --&gt; bar                 : ∅
foo -[thickness=1]-&gt; bar1   : [1]
foo -[thickness=2]-&gt; bar2   : [2]
foo -[thickness=4]-&gt; bar3   : [4]
foo -[thickness=8]-&gt; bar4   : [8]
foo -[thickness=16]-&gt; bar5  : [16]

@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="724" height="243" class="scale" src="../imgw/img-a5676093b651b748dca02736ed4d250a.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><em>[Ref. <a href="https://forum.plantuml.net/4949">QA-4949</a>]</em><p></p><h3>Mischung</h3><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg301cb115d2b4e20e076a0bca395dea17" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img301cb115d2b4e20e076a0bca395dea17" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;301cb115d2b4e20e076a0bca395dea17&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;301cb115d2b4e20e076a0bca395dea17&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;301cb115d2b4e20e076a0bca395dea17&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre301cb115d2b4e20e076a0bca395dea17">@startuml
title Gemischte Designs
class foo
class bar
bar1 : [#red,thickness=1]
bar2 : [#red,dashed,thickness=2]
bar3 : [#green,dashed,thickness=4]
bar4 : [#blue,dotted,thickness=8]
bar5 : [#blue,plain,thickness=16]

foo --&gt; bar                             : ∅
foo -[#red,thickness=1]-&gt; bar1          : [#red,1]
foo -[#red,dashed,thickness=2]-&gt; bar2   : [#red,dashed,2]
foo -[#green,dashed,thickness=4]-&gt; bar3 : [#green,dashed,4]
foo -[#blue,dotted,thickness=8]-&gt; bar4  : [blue,dotted,8]
foo -[#blue,plain,thickness=16]-&gt; bar5  : [blue,plain,16]
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="1098" height="243" class="scale" src="../imgw/img-301cb115d2b4e20e076a0bca395dea17.png"/></div></div></td></tr></tbody></table></p><p><a style="position:relative;top:-38px;" name="8dfb3b05fc895d2b"></a></p><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-600"></span><!-- ezoic_pub_ad_placeholder-600-incontent_17-234x60-600-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-600-incontent_17-468x60-600-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-600-incontent_17-728x90-600-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-600-incontent_17-970x90-600-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#36"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#36"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#36"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Ändern der Farbe und des Stils von Beziehungen (Verknüpfungen oder Pfeilen) (Inline-Stil)</h2><p></p> Sie können die <a href="color.html">Farbe</a> oder den Stil einzelner Beziehungen oder Pfeile ändern, indem Sie die folgende Inline-Notation verwenden: <p></p><ul><li><code class="cod">#color;line.[bold|dashed|dotted];text:color</code></li></ul><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msga1df3b90977b23616988498682dacf6c" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imga1df3b90977b23616988498682dacf6c" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;a1df3b90977b23616988498682dacf6c&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;a1df3b90977b23616988498682dacf6c&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;a1df3b90977b23616988498682dacf6c&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="prea1df3b90977b23616988498682dacf6c">@startuml
class foo
foo --&gt; bar : normal
foo --&gt; bar1 #line:red;line.bold;text:red  : red bold
foo --&gt; bar2 #green;line.dashed;text:green : green dashed
foo --&gt; bar3 #blue;line.dotted;text:blue   : blue dotted
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="374" height="187" class="scale" src="../imgw/img-a1df3b90977b23616988498682dacf6c.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><em>[Siehe ähnliche Funktion bei der <a href="deployment-diagram.html#0b2e57c3d4eafdda">Bereitstellung</a></em>] <a style="position:relative;top:-38px;" name="fab0ecfcfd0af288"></a><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#37"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#37"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#37"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Ändern der Farbe und des Stils einer Klasse (Inline-Stil)</h2><p></p> Sie können die <a href="color.html">Farbe</a> oder den Stil einer einzelnen Klasse mit den beiden folgenden Notationen ändern: <p></p><ul><li><code class="cod">#color ##[style]color</code></li></ul><p></p> Zuerst mit der Hintergrundfarbe (<code class="cod">#color</code>), dann mit dem Zeilenstil und der Zeilenfarbe (<code class="cod">##[style]color</code> ) <p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgda9a739a7eed7a7ea90d39bb5230acef" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgda9a739a7eed7a7ea90d39bb5230acef" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;da9a739a7eed7a7ea90d39bb5230acef&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;da9a739a7eed7a7ea90d39bb5230acef&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;da9a739a7eed7a7ea90d39bb5230acef&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="preda9a739a7eed7a7ea90d39bb5230acef">@startuml
abstract   abstract
annotation annotation #pink ##[bold]red
class      class      #palegreen ##[dashed]green
interface  interface  #aliceblue ##[dotted]blue
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="230" height="169" class="scale" src="../imgw/img-da9a739a7eed7a7ea90d39bb5230acef.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><em>[Ref. <a href="https://forum.plantuml.net/1487">QA-1487</a>]</em><p></p><ul><li><code class="cod">#[color|back:color];header:color;line:color;line.[bold|dashed|dotted];text:color</code></li></ul><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg5653ba2dfeab749bed4551ddc63f647c" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img5653ba2dfeab749bed4551ddc63f647c" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;5653ba2dfeab749bed4551ddc63f647c&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;5653ba2dfeab749bed4551ddc63f647c&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;5653ba2dfeab749bed4551ddc63f647c&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre5653ba2dfeab749bed4551ddc63f647c">@startuml
abstract   abstract
annotation annotation #pink;line:red;line.bold;text:red
class      class      #palegreen;line:green;line.dashed;text:green
interface  interface  #aliceblue;line:blue;line.dotted;text:blue
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="230" height="169" class="scale" src="../imgw/img-5653ba2dfeab749bed4551ddc63f647c.png"/></div></div></td></tr></tbody></table></p><p></p><p></p> Erstes Originalbeispiel: <p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg1b873439f6619434758055686f14d6c2" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img1b873439f6619434758055686f14d6c2" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;1b873439f6619434758055686f14d6c2&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;1b873439f6619434758055686f14d6c2&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;1b873439f6619434758055686f14d6c2&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre1b873439f6619434758055686f14d6c2">@startuml
class bar #line:green;back:lightblue
class bar2 #lightblue;line:green

class Foo1 #back:red;line:00FFFF
class FooDashed #line.dashed:blue
class FooDotted #line.dotted:blue
class FooBold #line.bold
class Demo1 #back:lightgreen|yellow;header:blue/red
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="373" height="277" class="scale" src="../imgw/img-1b873439f6619434758055686f14d6c2.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><em>[Ref. <a href="https://forum.plantuml.net/3770">QA-3770</a>]</em><a style="position:relative;top:-38px;" name="4829cb0f596c9350"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-601"></span><!-- ezoic_pub_ad_placeholder-601-incontent_18-234x60-601-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-601-incontent_18-468x60-601-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-601-incontent_18-728x90-601-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-601-incontent_18-970x90-601-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#38"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#38"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#38"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Pfeile von/zu Klassen Attributen und Methoden</h2><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgdd020a6ad9cf58c7c061dda66bf8a963" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgdd020a6ad9cf58c7c061dda66bf8a963" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;dd020a6ad9cf58c7c061dda66bf8a963&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;dd020a6ad9cf58c7c061dda66bf8a963&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;dd020a6ad9cf58c7c061dda66bf8a963&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="predd020a6ad9cf58c7c061dda66bf8a963">@startuml
class Foo {
+ field1
+ field2
}

class Bar {
+ field3
+ field4
}

Foo::field1 --&gt; Bar::field3 : foo
Foo::field2 --&gt; Bar::field4 : bar
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="202" height="265" class="scale" src="../imgw/img-dd020a6ad9cf58c7c061dda66bf8a963.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><em>[Ref. <a href="https://forum.plantuml.net/3636">QA-3636</a>]</em><p></p><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg934843614ab32f4bc2268652bb599c6b" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img934843614ab32f4bc2268652bb599c6b" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;934843614ab32f4bc2268652bb599c6b&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;934843614ab32f4bc2268652bb599c6b&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;934843614ab32f4bc2268652bb599c6b&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre934843614ab32f4bc2268652bb599c6b">@startuml
left to right direction

class User {
  id : INTEGER
  ..
  other_id : INTEGER
}

class Email {
  id : INTEGER
  ..
  user_id : INTEGER
  address : INTEGER
}

User::id *-- Email::user_id
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="360" height="120" class="scale" src="../imgw/img-934843614ab32f4bc2268652bb599c6b.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><em>[Ref. <a href="https://forum.plantuml.net/5261">QA-5261</a>]</em><a style="position:relative;top:-38px;" name="49b7759afaffc066"></a><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#39"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#39"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#39"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Gruppierung von Vererbungspfeilspitzen</h2><p></p> Sie können alle Pfeilspitzen mit Hilfe von <code class="cod">skinparam groupInheritance</code> zusammenfassen, mit einem Schwellenwert als Parameter. <p></p><h3>GroupInheritance 1 (keine Gruppierung)</h3><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msge2cca002d49b986caca1d83218c502f6" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imge2cca002d49b986caca1d83218c502f6" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;e2cca002d49b986caca1d83218c502f6&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;e2cca002d49b986caca1d83218c502f6&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;e2cca002d49b986caca1d83218c502f6&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pree2cca002d49b986caca1d83218c502f6">@startuml
skinparam groupInheritance 1

A1 &lt;|-- B1

A2 &lt;|-- B2
A2 &lt;|-- C2

A3 &lt;|-- B3
A3 &lt;|-- C3
A3 &lt;|-- D3

A4 &lt;|-- B4
A4 &lt;|-- C4
A4 &lt;|-- D4
A4 &lt;|-- E4
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="826" height="169" class="scale" src="../imgw/img-e2cca002d49b986caca1d83218c502f6.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><h3>Gruppenvererbung 2 (Gruppierung ab 2)</h3><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg5768232f069c92ba3b5bd6556d07bf8d" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img5768232f069c92ba3b5bd6556d07bf8d" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;5768232f069c92ba3b5bd6556d07bf8d&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;5768232f069c92ba3b5bd6556d07bf8d&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;5768232f069c92ba3b5bd6556d07bf8d&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre5768232f069c92ba3b5bd6556d07bf8d">@startuml
skinparam groupInheritance 2

A1 &lt;|-- B1

A2 &lt;|-- B2
A2 &lt;|-- C2

A3 &lt;|-- B3
A3 &lt;|-- C3
A3 &lt;|-- D3

A4 &lt;|-- B4
A4 &lt;|-- C4
A4 &lt;|-- D4
A4 &lt;|-- E4
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="826" height="189" class="scale" src="../imgw/img-5768232f069c92ba3b5bd6556d07bf8d.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><h3>Gruppenvererbung 3 (Gruppierung nur ab 3)</h3><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg72d5ced365ade12444c66254a530c6f2" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img72d5ced365ade12444c66254a530c6f2" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;72d5ced365ade12444c66254a530c6f2&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;72d5ced365ade12444c66254a530c6f2&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;72d5ced365ade12444c66254a530c6f2&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre72d5ced365ade12444c66254a530c6f2">@startuml
skinparam groupInheritance 3

A1 &lt;|-- B1

A2 &lt;|-- B2
A2 &lt;|-- C2

A3 &lt;|-- B3
A3 &lt;|-- C3
A3 &lt;|-- D3

A4 &lt;|-- B4
A4 &lt;|-- C4
A4 &lt;|-- D4
A4 &lt;|-- E4
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="826" height="189" class="scale" src="../imgw/img-72d5ced365ade12444c66254a530c6f2.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><h3>Gruppenvererbung 4 (Gruppierung nur ab 4)</h3><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgeda220ee6ba7688d727ff18c073d8b15" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgeda220ee6ba7688d727ff18c073d8b15" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;eda220ee6ba7688d727ff18c073d8b15&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;eda220ee6ba7688d727ff18c073d8b15&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;eda220ee6ba7688d727ff18c073d8b15&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="preeda220ee6ba7688d727ff18c073d8b15">@startuml
skinparam groupInheritance 4

A1 &lt;|-- B1

A2 &lt;|-- B2
A2 &lt;|-- C2

A3 &lt;|-- B3
A3 &lt;|-- C3
A3 &lt;|-- D3

A4 &lt;|-- B4
A4 &lt;|-- C4
A4 &lt;|-- D4
A4 &lt;|-- E4
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="826" height="189" class="scale" src="../imgw/img-eda220ee6ba7688d727ff18c073d8b15.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><em>[Ref. <a href="https://forum.plantuml.net/3193/grouping-inheritance-arrow-ends">QA-3193</a>, und Defekt <a href="https://forum.plantuml.net/13532/groupinheritance-bug">QA-13532</a>]</em><a style="position:relative;top:-38px;" name="a3e433077b7a6be8"></a><div style="clear:both;min-height:110px;margin-top:10px;"><div class="pezoic"><span id="ezoic-pub-ad-placeholder-602"></span><!-- ezoic_pub_ad_placeholder-602-incontent_19-234x60-602-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-602-incontent_19-468x60-602-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-602-incontent_19-728x90-602-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-602-incontent_19-970x90-602-nonexxxnonexxxxxxezmaxscaleval100 --></div></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#40"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#40"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#40"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Anzeige von JSON-Daten im Klassen- oder Objektdiagramm</h2><p></p><h3>Einfaches Beispiel</h3><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg09ab23cd01ddc8e4332d303870001a86" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img09ab23cd01ddc8e4332d303870001a86" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;09ab23cd01ddc8e4332d303870001a86&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;09ab23cd01ddc8e4332d303870001a86&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;09ab23cd01ddc8e4332d303870001a86&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre09ab23cd01ddc8e4332d303870001a86">@startuml
class Class
object Object
json JSON {
   &#34;fruit&#34;:&#34;Apple&#34;,
   &#34;size&#34;:&#34;Large&#34;,
   &#34;color&#34;: [&#34;Red&#34;, &#34;Green&#34;]
}
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="181" height="233" class="scale" src="../imgw/img-09ab23cd01ddc8e4332d303870001a86.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><em>[Ref. <a href="https://forum.plantuml.net/15481/possible-link-elements-from-two-jsons-with-both-jsons-embeded?show=15567#c15567">QA-15481</a>]</em><p></p> Ein weiteres Beispiel finden Sie auf der <a href="json.html#jinnkhaa7d65l0fkhfec">Seite JSON</a>. <a style="position:relative;top:-38px;" name="dbeeec19b401ede6"></a><div style="clear:both;height:50px;"></div><h2 class="chap"><img onclick="window.scrollTo(0,0);" title="Back to top" src="../backtop1.svg" width="20" height="20" class="backtop"/><div class="dropdown"><button class="dropbtn"><img width="16" height="16" src="../edit1.svg"/></button><div class="dropdown-content"><a href="http://alphadoc.plantuml.com/cmp/dokuwiki/de/class-diagram#41"><img width="20" height="20" src="../dokuwiki.png"/>Edit in Dokuwiki</a><a href="http://alphadoc.plantuml.com/cmp/asciidoc/de/class-diagram#41"><img width="20" height="20" src="../asciidoc32.png"/>Edit in Asciidoc</a><a href="http://alphadoc.plantuml.com/cmp/markdown/de/class-diagram#41"><img width="20" height="20" src="../markdown.png"/>Edit in Markdown</a></div></div>Packages and Namespaces Enhancement</h2><p></p><em>[From V1.2023.2+, and V1.2023.5]</em><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg20e3b98a6b7ebb5585ab6ad0eb812c8d" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img20e3b98a6b7ebb5585ab6ad0eb812c8d" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;20e3b98a6b7ebb5585ab6ad0eb812c8d&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;20e3b98a6b7ebb5585ab6ad0eb812c8d&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;20e3b98a6b7ebb5585ab6ad0eb812c8d&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre20e3b98a6b7ebb5585ab6ad0eb812c8d">@startuml
class A.B.C.D.Z {
}
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="228" height="316" class="scale" src="../imgw/img-20e3b98a6b7ebb5585ab6ad0eb812c8d.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg2625df89c9a9306e7453ac0d6db33a4c" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img2625df89c9a9306e7453ac0d6db33a4c" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;2625df89c9a9306e7453ac0d6db33a4c&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;2625df89c9a9306e7453ac0d6db33a4c&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;2625df89c9a9306e7453ac0d6db33a4c&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre2625df89c9a9306e7453ac0d6db33a4c">@startuml
set separator none
class A.B.C.D.Z {
}
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="114" height="68" class="scale" src="../imgw/img-2625df89c9a9306e7453ac0d6db33a4c.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msgb87e252c41258d89e58a062bdf8593c3" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="imgb87e252c41258d89e58a062bdf8593c3" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;b87e252c41258d89e58a062bdf8593c3&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;b87e252c41258d89e58a062bdf8593c3&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;b87e252c41258d89e58a062bdf8593c3&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="preb87e252c41258d89e58a062bdf8593c3">@startuml
!pragma useIntermediatePackages false
class A.B.C.D.Z {
}
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="84" height="112" class="scale" src="../imgw/img-b87e252c41258d89e58a062bdf8593c3.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><p><table class="coptable" valign="top" cellspacing="0" cellpadding="0" border="0"><tbody><tr><td valign="top"><div id="msg73a7b2d91d5924d4a646f2070e5ad9c9" class="msg"> 🎉 Copied! </div><img loading="lazy" width="16" height="16" id="img73a7b2d91d5924d4a646f2070e5ad9c9" title="Copy to clipboard" class="cop" src="../clipboard1.svg" onclick="ctc(&#39;73a7b2d91d5924d4a646f2070e5ad9c9&#39;)"/><br/><img loading="lazy" width="16" height="16" title="Edit online" class="cop" src="../edit1.svg" onclick="javascript:ljs(&#39;73a7b2d91d5924d4a646f2070e5ad9c9&#39;)"/></td><td><div class="mytab" onclick="javascript:ljs(&#39;73a7b2d91d5924d4a646f2070e5ad9c9&#39;)"><div class="mycell0"><code onmouseover="az=1" onmouseout="az=0"><pre id="pre73a7b2d91d5924d4a646f2070e5ad9c9">@startuml
set separator none
package A.B.C.D {
  class Z {
  }
}
@enduml
</pre></code></div><div class="mycell"><img loading="lazy" width="84" height="112" class="scale" src="../imgw/img-73a7b2d91d5924d4a646f2070e5ad9c9.png"/></div></div></td></tr></tbody></table></p><p></p><p></p><em>[Ref. <a href="https://github.com/plantuml/plantuml/issues/1352">GH-1352</a>]</em></td><td id="toctd" valign="top" style="max-width:240px;min-width:240px;"><div id="toc"><ul><li><a href="class-diagram.html#e5cec68ef9127fc4">Elemente deklarieren</a></li><li><a href="class-diagram.html#9dd2a6eca0c2a0e7">Beziehungen zwischen Klassen</a></li><li><a href="class-diagram.html#4a705b44651caa59">Beschriften von Beziehungen</a></li><li><a href="class-diagram.html#bd62ba9333d08763">Verwendung von Sonderzeichen</a></li><li><a href="class-diagram.html#090967fbee930909">Methoden hinzufügen</a></li><li><a href="class-diagram.html#3644720244dd6c6a">Sichtbarkeit festlegen</a></li><li><a href="class-diagram.html#9fd9d25be2fbb118">Abstract und Static</a></li><li><a href="class-diagram.html#08ca680401eefe3a">Der Klassenrumpf für Fortgeschrittene</a></li><li><a href="class-diagram.html#59c91a18bcc97bb0">Notizen und Stereotypen</a></li><li><a href="class-diagram.html#23ca7846dedbb80a">Mehr zu Notizen</a></li><li><a href="class-diagram.html#c909b0b5f0434a64">Note on field (field, attribute, member) or method</a></li><li><a href="class-diagram.html#1d010d898a1fead2">Notizen zu Beziehungen</a></li><li><a href="class-diagram.html#a339d3559f33ad64">Abstrakte Klassen und Interfaces</a></li><li><a href="class-diagram.html#6a8ec84e53ede3ae">Verstecken von Attributen, Methoden ...</a></li><li><a href="class-diagram.html#20ec7d48c223b142">Verstecken von Klassen</a></li><li><a href="class-diagram.html#3efa75742a5e3384">Klassen entfernen</a></li><li><a href="class-diagram.html#c0ef243486e3ad85">Hide, Remove or Restore tagged element or wildcard</a></li><li><a href="class-diagram.html#382f74cc79c4edbc">Hide or Remove unlinked class</a></li><li><a href="class-diagram.html#b09695ba6d76313d">Verwenden von Generics</a></li><li><a href="class-diagram.html#4b62dd14f1d33739">Besondere Hervorhebungen</a></li><li><a href="class-diagram.html#27fe4eb3edbaff8f">Pakete</a></li><li><a href="class-diagram.html#a05971470d7fd711">Paketarten</a></li><li><a href="class-diagram.html#13d28e8dfc702e34">Namensraum</a></li><li><a href="class-diagram.html#0d2504841361d7da">Automatische Erzeugung eines Namensraums</a></li><li><a href="class-diagram.html#8b64d7547fa4f699">Lollipop Schnittstellen</a></li><li><a href="class-diagram.html#5a6e75f1261e3d91">Ändern der Pfeilrichtung</a></li><li><a href="class-diagram.html#fbbc0504d940020e">Assoziationsklassen</a></li><li><a href="class-diagram.html#43980c266e3ad62c">Assoziation in derselben Klasse</a></li><li><a href="class-diagram.html#7aa53dbdfc2137bf">Der Skinparam-Befehl</a></li><li><a href="class-diagram.html#89a4c54a52d87715">Das Aussehen von Stereotypen verändern</a></li><li><a href="class-diagram.html#cfe920390b501516">Farbverlauf</a></li><li><a href="class-diagram.html#c08f8d9927fcb626">Hilfe beim Layout</a></li><li><a href="class-diagram.html#fc6a662f75b53104">Große Dateien aufteilen</a></li><li><a href="class-diagram.html#6e0d446ea2c5bf82">Extends und Implements</a></li><li><a href="class-diagram.html#4ffca7d13182195f">Design Möglichkeiten für Beziehungen (Verknüpfungen oder Pfeile)</a></li><li><a href="class-diagram.html#8dfb3b05fc895d2b">Ändern der Farbe und des Stils von Beziehungen (Verknüpfungen oder Pfeilen) (Inline-Stil)</a></li><li><a href="class-diagram.html#fab0ecfcfd0af288">Ändern der Farbe und des Stils einer Klasse (Inline-Stil)</a></li><li><a href="class-diagram.html#4829cb0f596c9350">Pfeile von/zu Klassen Attributen und Methoden</a></li><li><a href="class-diagram.html#49b7759afaffc066">Gruppierung von Vererbungspfeilspitzen</a></li><li><a href="class-diagram.html#a3e433077b7a6be8">Anzeige von JSON-Daten im Klassen- oder Objektdiagramm</a></li><li><a href="class-diagram.html#dbeeec19b401ede6">Packages and Namespaces Enhancement</a></li></ul></div></td></tr></tbody></table></p><p></p><span id="ezoic-pub-ad-placeholder-104"></span><!-- ezoic_pub_ad_placeholder-104-bottom_of_page-234x60-104-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-104-bottom_of_page-468x60-104-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-104-bottom_of_page-728x90-104-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-104-bottom_of_page-970x250-104-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-104-bottom_of_page-300x250x3-104-nonexxxnonexxxxxxezmaxscaleval100 --><!-- ezoic_pub_ad_placeholder-104-bottom_of_page-970x90-104-nonexxxnonexxxxxxezmaxscaleval100 --></div><style>.btm{text-align:center}.btm a{text-decoration:none;color:#637282}.btm a:hover{color:#0366d6}</style><div class="btm"><hr/><a href="https://g.ezoic.net/privacy/plantuml.com"><small>Privacy Policy</small></a>      <a href="../direct-sales.html"><small>Advertise</small></a><p></p></div><script>var sc_project=11129478;var sc_invisible=1;var sc_security="ff6d21f8";</script><script async="" src="https://www.statcounter.com/counter/counter.js"></script><!--[selectrongo:done]--><script type="text/javascript">
				var __inScopeForCCPA = false;
		function __uspapi(command, version, callback) {
			var response = null;
			var successs = false;
			if (command === "getUSPData" && version === 1) {
				var uspString = "1"; // Version
				if (__inScopeForCCPA) {
					uspString += "N"; // Has Explicit Notice for Opt Out been provided (ex footer or minor consent modal)
					var result;
					var consentCookie = (result = new RegExp('(?:^|; )ezoccpaconsent=([^;]*)').exec(document.cookie)) ? (result[1]) : null;
					if (consentCookie === "nonconsent") {
						uspString += "Y";
					}
					else {
						uspString += "N";
					}
					uspString += "N" // Is pub a signatory to the IAB Limited Service Provider Agreement (http://www.iabprivacy.com/)
				}
				else {
					uspString += "---";
				}
				response = {
					uspString: uspString,
					version: 1
				};
				success = true;
			}
			return callback(response, success);
		};
		function __receiveUspapiMessage(event) {
			if (event.data.hasOwnProperty('__uspapiCall')) {
				__uspapi('getUSPData', 1, function(uspData, success) {
					event.source.postMessage({
						__uspapiReturn: {
							returnValue: uspData,
							success: success,
							callId: event.data.__uspapiCall.callId
						}
					},
					event.origin);
				});
			}
			return null;
		};
		window.addEventListener("message", __receiveUspapiMessage, false);
</script>
<script>__ez.queue.addFile('/tardisrocinante/vitals.js', '/tardisrocinante/vitals.js?gcb=2&cb=3', false, ['/parsonsmaize/mulvane.js'], true, false, true, false);</script>
<script>var _audins_dom="plantuml_com",_audins_did=173770;__ez.queue.addDelayFunc("audins.js","__ez.script.add", "//go.ezodn.com/detroitchicago/audins.js?cb=195-2");</script><noscript><div style="display:none;"><img src="https://pixel.quantserve.com/pixel/p-31iz6hfFutd16.gif?labels=Domain.plantuml_com,DomainId.173770" border="0" height="1" width="1" alt="Quantcast"/></div></noscript>
<script>__ez.queue.addFile('/beardeddragon/drake.js', '/beardeddragon/drake.js?gcb=2&cb=4', false, [], true, false, true, false);</script>
<script type="text/javascript" style='display:none;'>var __ez_dims = (function() {
		var setCookie = function( name, content, expiry ) {
			return document.cookie = name+'='+content+((expiry)?';expires='+(new Date(Math.floor(new Date().getTime()+expiry*1000)).toUTCString()):'')+';path=/';
		};
		var ffid = 1;
		var oh = window.screen.height;
		var ow = window.screen.width;
		var h = ffid === 1 ? oh : (oh > ow) ? oh : ow;
		var w = ffid === 1 ? ow : (oh > ow) ? ow : oh;
		var uh = window.innerHeight || document.documentElement.clientHeight || document.getElementsByTagName('body')[0].clientHeight;
		var uw = window.innerWidth || document.documentElement.clientWidth || document.getElementsByTagName('body')[0].clientWidth;
		setCookie('ezds', encodeURIComponent('ffid='+ffid+',w='+w+',h='+h), (31536e3*7));
		setCookie('ezohw', encodeURIComponent('w='+uw+',h='+uh), (31536e3*7));
	})();</script>
<script type='text/javascript' style='display:none;' async>__ez.queue.addFile('/parsonsmaize/chanute.js', '/parsonsmaize/chanute.js?a=a&cb=7&dcb=195-2&shcb=34', true, ['/parsonsmaize/mulvane.js'], true, false, false, false);</script>
<script type='text/javascript' style='display:none;' async>__ez.queue.addFile('/porpoiseant/jellyfish.js', '/porpoiseant/jellyfish.js?a=a&cb=10&dcb=195-2&shcb=34', false, [], true, false, false, false);</script></body></html>